无效的路径表达式。必须是 SingleValuedAssociationField
Invalid PathExpression. Must be a SingleValuedAssociationField
我正在努力:
class PrixRepository extends EntityRepository
{
public function findPrixLike($film)
{
$query = $this->createQueryBuilder('p')
->addSelect('s')
->from('MG\UserBundle\Entity\SocieteDiffuseur', 's')
->join('s.paysDiffs', 'pays')
->where(':filmId MEMBER OF p.films')
->andWhere('pays.id MEMBER OF p.pays')
->setParameter('filmId', $film)
->getQuery();
$result = $query->getResult();
return $result;
}
}
我收到这个错误:
[Semantical Error] line 0, col 156 near 'id MEMBER OF': Error: Invalid PathExpression. Must be a SingleValuedAssociationField.
您可以在这里找到我的实体结构:
我尝试了多个查询,但我真的不知道我必须做什么。
恭喜@olaurendeau。就像他说的那样,学说应该是一个实体而不是一个 id,所以正确的查询是:(支付 MEMBER OF 而不是 pays.id...)
public function findPrixLike($film)
{
$query = $this->createQueryBuilder('p')
->addSelect('s')
->from('MG\UserBundle\Entity\SocieteDiffuseur', 's')
->join('s.paysDiffs', 'pays')
->where(':filmId MEMBER OF p.films')
->andWhere('pays MEMBER OF p.pays')
->setParameter('filmId', $film)
->getQuery();
$result = $query->getResult();
return $result;
我正在努力:
class PrixRepository extends EntityRepository
{
public function findPrixLike($film)
{
$query = $this->createQueryBuilder('p')
->addSelect('s')
->from('MG\UserBundle\Entity\SocieteDiffuseur', 's')
->join('s.paysDiffs', 'pays')
->where(':filmId MEMBER OF p.films')
->andWhere('pays.id MEMBER OF p.pays')
->setParameter('filmId', $film)
->getQuery();
$result = $query->getResult();
return $result;
}
}
我收到这个错误:
[Semantical Error] line 0, col 156 near 'id MEMBER OF': Error: Invalid PathExpression. Must be a SingleValuedAssociationField.
您可以在这里找到我的实体结构:
恭喜@olaurendeau。就像他说的那样,学说应该是一个实体而不是一个 id,所以正确的查询是:(支付 MEMBER OF 而不是 pays.id...)
public function findPrixLike($film)
{
$query = $this->createQueryBuilder('p')
->addSelect('s')
->from('MG\UserBundle\Entity\SocieteDiffuseur', 's')
->join('s.paysDiffs', 'pays')
->where(':filmId MEMBER OF p.films')
->andWhere('pays MEMBER OF p.pays')
->setParameter('filmId', $film)
->getQuery();
$result = $query->getResult();
return $result;