【发布时间】:2017-03-25 03:03:48
【问题描述】:
我在一个页面上有一个简单的表格,用于输出棒球比赛的分页列表。它显示了比赛日期、当地球队和客队以及城市。我有三个 Eloquent 模型(Game、Team 和 City),所有的关系都很好,一切都很好。我喜欢能够做到$game->localTeam->city->fullName(一个结合了城市和州的突变体)。
数据来自以下查询:Game::with('teamHome', 'teamVisitor', 'teamHome.city')。我希望能够按任何列排序。但是如果我在查询中使用->orderBy(),它只允许对游戏表中的结果进行排序。我找不到对球队或城市进行排序的方法。从我读到的,我需要做一个流畅的查询并加入我所有的表。但是,我将拥有一个 stdClass 对象数组,并且无法在我的 Eloquent 关系中导航并使用上面描述的 fullName mutator。
这个场景看起来很简单,一定有一种优雅的方式来做到这一点?
【问题讨论】:
-
你不能像 $game->localTeam->sortBy('name') 和 $game->localTeam->city->sortyBy('name') 那样做吗? (假设 Team 和 City 有 name 属性)
标签: laravel sorting eloquent fluent