Doctrine expr() - > in()无效的PathExpression错误

时间:2014-06-04 07:08:05

标签: symfony doctrine-orm

完全错误:

  

[语义错误]第0行,第136行靠近'滑块IN(:':错误:无效的PathExpression.StateFieldPathExpression或   SingleValuedAssociationField预期。

问题:

我想过滤我的结果取决于manyToMany关系但是如上所述得到错误。

代码:

if(!empty($filters['sliders'])) {
    $qb
       ->leftJoin('CSSliderBundle:SliderItem', 's', 'WITH', 's.image = m.id')
       ->andWhere(
           $qb->expr()->in('s.sliders', ':sliders')
       );

       $parameters['sliders'] = $filters['sliders'];
}

数据:

$parameters['sliders'] = [3, 4];

我真的不明白我做错了什么......

1 个答案:

答案 0 :(得分:1)

我如何解决我的问题:

$qb
   ->leftJoin('BRCNSliderBundle:SliderItem', 's', 'WITH', 's.image = m.id')
   ->join('s.sliders', 'sl', 'WITH', $qb->expr()->in('sl.id', ':sliders'));

使用该ID加入其他表格。