Доктрина «Получить сущности на основе выбранной категории детей»

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

Например, у нас есть дерево категорий, подобное этому:

Главный:

  1. Фрукты
  2. Автомобиль

Дети: (Родительский идентификатор не может быть пустым! В этом примере: Родительский идентификатор = 1)

  1. яблоко
  2. оранжевый
  3. Банан

И у нас есть сущность (запись в БД), подобная этой:

id = 1, category_id = 2, title = This records must belong to ORANGE category!

Когда мы выбираем категорию Fruit из базы данных, я должен получить объекты, связанные с самим Fruit и его дочерними категориями.

Что я пробовал?

$qb
->select('i.id, i.title, i.slug, i.created_at, c.file')
->from('CSImageBundle:Image', 'i')
->leftJoin('i.taxonomies', 'tx')
->leftJoin('tx.children', 'st')
->where($qb->expr()->in('tx.id', 'st.id'));

Не удается …

Что я должен попробовать?

0

Решение

Трудно сказать без сообщения об ошибке, но, похоже, проблема в вашем выборе, где находится c.file?

$qb
->select('i.id, i.title, i.slug, i.created_at, c.file') //should this be i.file? or tx.file? or st.file?
->from('CSImageBundle:Image', 'i')
->leftJoin('i.taxonomies', 'tx')
->leftJoin('tx.children', 'st')
->where($qb->expr()->in('tx.id', 'st.id'));
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]