symfony QueryBuilder -- Error: Invalid PathExpression. Must be a StateFieldPathExpression.
Primary tabs
Ошибка
При обработке запроса QueryBuilder -а Symfony появляется такая ошибка:
Error: Invalid PathExpression. Must be a StateFieldPathExpression.
Решение
Внешние ключи в БД называются, напрмер, product_id, а в Entity классе - $product.
В QueryBuilder -е следует называть такие поля 't.product' (где t - псевдоним таблицы, никаких _id не добавляем) и оборачивать в метод IDENTITY():
$productsId = $this->em
->createQueryBuilder()
->select('IDENTITY(bp.product)')
->from(BasketProduct::class, 'bp')
->where('IDENTITY(bp.basket) = ' . $basket->getId())
->orderBy('bp.id', 'ASC')
->getQuery()
->getResult(); Источники
- https://stackoverflow.com/questions/14216470/symfony2-and-doctrine-error-invalid-pathexpression-must-be-a-statefieldpathe
- http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/dql-doctrine-query-language.html
- Log in to post comments
- 6248 reads