我有两个模型,一个Track模型和一个Artist模型,每个Track模型belongsTo()一个Artist模型。Track模型有一个number列,Artist模型有一个name列。我想检索所有Tracks位置number = 1,然后显示按艺术家姓名排序的那些。到目前为止,我只知道如何做一个或另一个,而不是两者。
我希望能够通过以下方式做到这一点:
Track::with(['artist' => function($q) {
$q->orderBy('name');
}])->where('number', 1)->get();
这将显示所有曲目,其中number = 1,但tracks未按任何特定顺序排序。如果我with()完全删除它,我会得到相同的结果。相反,如果我删除该where()子句,那么我将获得数据库中的所有曲目,并按艺术家的姓名对它们进行排序。如何结合这两个功能?
吃鸡游戏
跃然一笑