PHP头条
热点:

php以雄辩的关系进行排序


我有一张桌子:

>分析,列(id,名称,game_id(FK));
>游戏,栏目(id,名称,round_id(FK));
>圆,列(id,圆);

我需要按(round_id)获取所有分析订单记录.

我尝试Analyses :: orderBy(’round_id’)-> get(),但不起作用;

解决方法:

首先,您的分析表中没有该列

要进行订购,您必须将其添加到您的关系中(假设他们已正确完成)

分析模型

public function games()
{
return $this->hasMany(Game::class)->orderBy('round_id'); //see? we can add orderBy to the relation
}

游戏模型

public function rounds()
{
return $this->hasMany(Round::class); // i dont know if its manytomany for eal, im just trying to explain
}

现在,您可以使用像这样的eagerloading来获得游戏的所有分析结果并进行回合

$test = Analyses::with('games.round')->get();

您可以为这样的分析链接另一个orderby

$test = Analyses::with('games.round')->orderby('game_id')->get();

在上述示例中,您将按game_id进行分析排序,并且每个Analyze中的游戏将按round_id排序

我希望这是你想要做的


www.phpzy.comtrue/phpzx/51784.htmlTechArticlephp以雄辩的关系进行排序 我有一张桌子: >分析,列(id,名称,game_id(FK)); >游戏,栏目(id,名称,round_id(FK)); >圆,列(id,圆); 我需要按(round_id)获取所有分析订单记录. 我尝试Analyses :: orderBy(’...

相关文章

PHP之友评论

今天推荐