私は野球ゲームのページ番号付きリストを出力するページに単純なテーブルを持っています。ゲームの日付、地元チームと訪問チーム、そして都市を表示します。私は3つの優雅なモデル(ゲーム、チームと都市)を持っています。すべての関係が働いており、すべてが良いです。私は$game->localTeam->city->fullName
(都市と州を組み合わせたミューテータ)をやることができて大好きです。Eloquent relationshipで並べ替え
データは、次のクエリから得られます。Game::with('teamHome', 'teamVisitor', 'teamHome.city')
。私は任意の列で並べ替えることができるようにしたい。しかし、クエリで->orderBy()
を使用すると、ゲームテーブルから結果をソートすることしかできません。私はチームや都市を分類する方法を見つけることができません。私が読んだことから、Fluentクエリを実行して、すべてのテーブルに参加する必要があります。しかし、私はstdClassオブジェクトの配列を持っていて、私のEloquent関係でナビゲートすることはできず、上記のfullNameミューテータを使用することができます。
このシナリオはとても基本的なようですが、これを行うためのエレガントな方法が必要ですか?
$ game-> localTeam-> sortBy( 'name')や$ game-> localTeam-> city-> sortyBy( 'name')のようにできませんか? (TeamとCityは名前のプロパティを持っていると仮定します) –