雄辩的订单关系结果

时间:2018-04-30 11:43:20

标签: php laravel laravel-5 eloquent

我有一个简单的雄辩查询,并希望在我的结果中包含另一个表格,但是,关系结果的顺序不正确。

是否可以在不使用SQLRAW语句的情况下订购结果

$groups = AttributeGroup::with('attribute')->where('page_id', $page->id)->get();

我想要什么 -

$groups = AttributeGroup::with('attribute')->orderBy('iteration', 'DESC')->where('page_id', $page->id)->get();

我收到Unknown column的错误,因为此列是关系表的一部分。

2 个答案:

答案 0 :(得分:3)

这将命令每个属性组结果的每个属性关系:

$groups = AttributeGroup::with(['attribute' => function ($query) {
    $query->orderBy('iteration', 'DESC');
}])->where('page_id', $page->id)->get();

这是你想要达到的目标吗?

答案 1 :(得分:0)

使用withhas时,您可以使用闭包更改查询。

$groups = AttributeGroup::with(['attribute' => function($query){
    $query->orderBy('iteration');
})->where('page_id', $page->id)->get();

详情请见https://laravel.com/docs/5.6/eloquent-relationships#constraining-eager-loads