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

Posted

技术标签:

【中文标题】如何在 FuelPHP 中为关系查询添加条件?【英文标题】:How to add a condition to relation query in FuelPHP? 【发布时间】:2014-08-15 20:12:08 【问题描述】:

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

这是我当前获取相关 cmets 的查询:

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

这是我的尝试,但绝对行不通,因为“可见性”只是 cmets 而不是 orgs 的属性。

$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】:

如果其他人遇到这个问题,这就是有效的方法。

$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();    

【讨论】:

你只给了它 11 个小时 ;) 我们中的一些人确实回答了fuelphp 的问题

以上是关于如何在 FuelPHP 中为关系查询添加条件?的主要内容,如果未能解决你的问题,请参考以下文章

FuelPhp 关系查询作为单一结果

FuelPHP:添加多个多对多关系

FuelPHP - 订购多对多关系

如何在 laravel 查询生成器中为同一列构建多个条件的查询?

Fuelphp属于关系,不同的模型

如何在 GraphiQL 中为 GraphQL 查询和突变添加名称?