@maximrabotaet

Как в symfony 3.4 вытащить пользователей у которых нет конкретных ролей?

Здравствуйте!
Использую FOSUserBundle для пользователей. В сущности есть поле roles типа array множественные значения которого хранятся в бд. Мне нужно выбрать из бд всех пользователей у которых нет роли "ROLE_ADMIN", как это сделать используя доктрину? И где можно почитать про подобную выборку не стандартных для бд типов которые есть в доктрине?
  • Вопрос задан
  • 111 просмотров
Решения вопроса 1
@maximrabotaet Автор вопроса
Вот так:
/**
     * @param string $role
     *
     * @return array
     */
    public function findWithoutRole($role)
    {
        $qb = $this->_em->createQueryBuilder();
        $qb->select('u')
            ->from($this->_entityName, 'u')
            ->where('u.roles NOT LIKE :roles')
            ->setParameter('roles', '%"' . $role . '"%');
        return $qb->getQuery()->getResult();
    }
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы