Doctrine запрос для аутентификации - PullRequest
0 голосов
/ 06 апреля 2011

Рассмотрим этот запрос:

$query = Doctrine::getTable('sfGuardUser')
      ->createQuery('u')
      ->innerJoin('u.Groups g')
      ->where('u.name = 'username')
      ->adnWhere('g.name <> 'groupname')

Возвращает пользователя с именем пользователя независимо от его имени группы. Мне нужно только вернуть пользователя, если он НЕ имеет отношения 'groupname'.

1 Ответ

0 голосов
/ 06 апреля 2011

Вы должны использовать ключевое слово WITH во внутреннем соединении. Это в основном добавляет условия к неявному предложению ON внутреннего соединения.

$query = Doctrine::getTable('sfGuardUser')
      ->createQuery('u')
      ->innerJoin("u.Groups g WITH g.name <> 'groupname'")
      ->where('u.name = 'username')

Подробнее здесь.

...