Используя класс Document с PHPCR-ODM, можно получить результаты из репозитория классов, результаты автоматически сортируются по полю sort_order
, которое находится не в классе Document, а в схеме базы данных.
Пример запроса, зарегистрированного в Symfony Profiler:
SELECT path FROM phpcr_nodes WHERE parent = ? AND workspace_name = ? ORDER BY sort_order ASC
У меня есть простой запрос, созданный с помощью queryBuilder :
$qb->from()
->document('AppBundle\Document\Product', 'product')
->end()
->where()
->neq()->field('product.type')->literal('category');
$query = $qb->getQuery();
Результат не сортируется по полю sort_order
, как другие запросы, и я не могу использовать метод orderBy
, так как это не поле класса Document.
Итак, как я могу отсортировать результаты?
sort_order
, которое не находится в классе Document, а затем позже. Результат не сортируется по полюsort_order
, как другие запросы, вы хотите, чтобы ваш запрос сортировался по такому столбцуsort_order
? С другой стороны, я не знаю, как остальные запросы автоматически сортируются поsort_order
, потому что, насколько мне известно, это невозможно, может быть, я ошибаюсь - person ReynierPM   schedule 20.12.2017