如何在FuelPHP中为关系查询添加条件?

时间:2014-08-15 20:12:08

标签: php orm fuelphp

我正在尝试在fuelphp中过滤orm查询。是否可以检查相关模型上的属性?我想抓住相关的“评论”,但前提是它们的可见性属性为“0”。是否可以在同一个查询中执行此操作?

这是我当前查询的相关评论:

$top_rated = \Services\Model_Org::query()
                                    ->related('org')
                                    ->related('profile_image')
                                    ->related('comments')
                                    ->where('rating','!=', 'null')
                                    ->order_by('rating','desc')
                                    ->get();    

这是我的尝试,这肯定不起作用,因为'可见性'只是评论的属性而不是组织。

$top_rated = \Services\Model_Org::query()
                                    ->related('org')
                                    ->related('profile_image')
                                    ->related('comments')
                                        ->where('visibility', '=', '0')
                                    ->where('rating','!=', 'null')
                                    ->order_by('rating','desc')
                                    ->get();

1 个答案:

答案 0 :(得分:3)

如果其他人遇到这个问题,那么这是有效的。

$top_rated = \Services\Model_Org::query()
                                    ->related('org')
                                    ->related('profile_image')
                                    ->related( array(
                                      'comments' => array(
                                       'where' => array(
                                        array('visible' , '=' , '0')
                                       )
                                      )
                                     )
                                    )
                                    ->where('rating','!=', 'null')
                                    ->order_by('rating','desc')
                                    ->get();