Работаю в Symfony2.
У меня есть две сущности
- Category {id,name}
- Item{id,category,name,isActive}
Генерирую меню со вложенными item. наподобие
Машины (category.name)
- машина1 (item.name)
- машина2 (item.name)
Самолет (category.name)
- самолет1 (item.name)
- самолет2 (item.name)
Генерация в twig
{% for category in categories %}
{{category.name}}
{% for item in category.items %}
- {{ item.name }}
{% endfor %}
{% endfor %}
Если запросить найти все, то проблем нет.
Но мне нужно
1) Вывести все категории
2) Вывести вложенные item которые isActive = 1
Пробовал так
class CategoryRepository extends EntityRepository
{
public function findAll()
{
return $this->createQueryBuilder('c')
->innerJoin('c.items', 'i')
->where('i.isActive = 1')
->orderBy('c.position', 'ASC')
->getQuery()->getResult();
}
}
1) Выводить категории не все, только те которые имеют items
2) Items выводятся все равно все, даже isActive = 0
Буду благодарен за решение + ссылки по теме.