我使用KNPPaginatorBundle,如果我将setParameter添加到查询中,就会得到这个错误消息。
我使用Symfony 2.4.2,原则2.2.3,KNP -组件1.2.5和KNP分页器2.4.0。
如果我用:
$qb = $this->createQueryBuilder('c')
->addSelect('translation')
->leftJoin('c.translations', 'translation')
->where('c.lvl = 1');它运转正常。
但如果我用:
$qb = $this->createQueryBuilder('c')
->addSelect('translation')
->leftJoin('c.translations', 'translation')
->where('c.lvl = :lvl')
->setParameter('lvl', '1');我收到了一条错误消息
无效的参数号:绑定变量的数目与令牌的数目不匹配。
这是我的错误或错误在捆绑或塞弗尼?谢谢你的帮助。
发布于 2015-01-05 21:40:53
因为您使用where子句,所以会收到此错误。当使用setParameter时,您需要使用andWhere。它应该如下所示:
$qb = $this->createQueryBuilder('c')
->addSelect('translation')
->leftJoin('c.translations', 'translation')
->andWhere('c.lvl = :lvl')
->setParameter('lvl', '1');https://stackoverflow.com/questions/23022325
复制相似问题