- 複数テーブルで構成されるデータを、モデルベースで扱う方法
- モデルで
hasOne()
、hasMany()
、belongsTo()
メソッドによってリレーションを定義 - 親モデルに属する子モデルを、親モデルの属性のように扱えるようになる
- SQLによりフレームワークではなくRDBMS側でテーブルの連結や絞り込みなどの操作を行う
- クエリービルダーメソッドを組み合わせてSQLを生成する
WHERE
条件でAND
とOR
を組み合わせる場合の書き方where()
とorWhere()
の優先順位とクロージャ―による括弧の実装
- クエリービルダーの効率性と、リレーションによる直感的な操作を組み合わせる手順
- 子モデルの属性の条件による絞り込みを、クエリービルダーで行う方法
whereHas()
メソッドを使う
- 特定モデルで利用するクエリービルダーを、モデルのメソッドとして定義する