Symfony2 / Doctrine QueryBuilder с использованием andwhere ()

Я использую следующий метод в классе репозитория для поиска определенных тегов в моей базе данных:

public function getItemsByTag($tag, $limit = null)
{
    $tag = '%'.$tag.'%';

    $qb = $this->createQueryBuilder('c');

    $qb->select('c')
       ->where($qb->expr()->like('c.tags', '?1'))
       ->setParameter(1, $tag)
       ->addOrderBy('c.clicks', 'DESC');

    if (false === is_null($limit))
        $qb->setMaxResults($limit);

    return $qb->getQuery()->getResult();
}

Это прекрасно работает .. Но: Как я могу добавить 2 дополнительные переменные ( где: просмотрено = 1, включено = 1)? Я пробовал andwhere (), но не мог понять.

Я также обнаружил, что что-то вроде этого:

public function getItems($limit = null)
{
        $qb = $this->createQueryBuilder('b')
               ->select('b')
               ->add('where', 'b.reviewed = 1')
               ->add('where', 'b.enabled = 1')
               ->addOrderBy('b.name', 'ASC');

        // ...
}

тоже не сработает ...

Есть подсказки?

11
задан Mike 16 January 2012 в 01:42
поделиться