Начиная с Symfony2 + Doctrine.
У меня есть таблица с объектами User (fos_user), для которой моя схема содержит столбец ролей типа 'array'.
Doctrine сохраняет поля этого типа, сериализуя их из php 'array' в 'longtext' (в случае mysql).
Итак, скажем, у меня есть следующие пользователи, сохраненные в БД:
User1: array(ROLE_ADMIN, ROLE_CUSTOM1)
User2: array(ROLE_ADMIN, ROLE_CUSTOM2)
User3: array(ROLE_CUSTOM2)
Теперь в моем контроллере я хочу выбрать всех пользователей с установленным ROLE_ADMIN. Есть ли способ написать DQL-запрос, который будет напрямую возвращать мне User1 и User2? Или мне нужно, чтобы все пользователи имели Doctrine для несериализации столбца ролей, а затем для каждого из них выполнялись in_array ('ROLE_ADMIN', $user- > getRoles())?
Я искал часть DQL руководства, но до сих пор не нашел ничего похожего на мои потребности...
UPD: Найдите question ту же самую вещь, которая содержит рабочий код запроса