【发布时间】:2019-11-13 17:28:39
【问题描述】:
我怎样才能根据某事物的关系对结果集进行排序?
我正在尝试获得与此等效的 Eloquent:
SELECT * FROM users INNER JOIN roles ON users.role_id = roles.id ORDER BY roles.label DESC
Here is what I am trying (based on the documentation):
$order = 'desc';
$users = User::with(['role' => function ($q) use ($order) {
$q->orderBy('label', $order);
}])->paginate(10);
但它没有正确订购它们。我做错了什么?
编辑:不确定显示模型关系是否相关,但这里是:
public function role()
{
return $this->belongsTo(Role::class);
}
【问题讨论】:
-
这能回答你的问题吗? Order by relationship column
-
@Adam no man!.....我不想加入我的角色表......我必须使用 with()......所以上面ans 对我没有帮助
-
但是您检查的答案与stackoverflow.com/a/38262311/2311074相同
标签: php mysql laravel laravel-5 eloquent