ホームページ >バックエンド開発 >PHPチュートリアル >Laravel の「orderBy」リレーションシップを使用して、関連するモデル レコードを並べ替えるにはどうすればよいですか?
Laravel の orderBy 関係で関連モデルのレコードを順番に取得する
Laravel では、関連モデルのデータにアクセスするときに、 orderBy メソッドを使用した結果。たとえば、次のコードは作成者によるすべてのコメントを取得し、リストに表示します:
foreach($post->user->comments as $comment) { echo "<li>" . $comment->title . " (" . $comment->post->id . ")</li>"; }
ただし、リストは希望の順序で並べられない場合があります。投稿 ID に基づいて結果を並べ替えるには、クエリ関数を使用して関係を拡張できます。
public function comments() { return $this->hasMany('Comment')->orderBy('column'); }
「column」パラメーターは、並べ替えの基準となる列を指定します。
より柔軟に、ユーザーがコントローラー メソッドを通じて orderBy 列を指定できるようにすることができます:
public function comments() { return $this->hasMany('Comment'); } class Controller { public function index() { $column = Input::get('orderBy', 'defaultColumn'); $comments = User::find(1)->comments()->orderBy($column)->get(); // use $comments in the template } }
このメソッドは、ユーザー入力に基づいて関連モデル レコードの動的な順序付けを提供し、結果の表示の柔軟性を高めることができます。 .
以上がLaravel の「orderBy」リレーションシップを使用して、関連するモデル レコードを並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。