Laravel withを使った時に特定のカラムだけ取得する方法

Laravel の with は、リレーションをもとにデータを取得する時に便利ですが、with で指定したテーブルの特定のカラムだけを取得したい場合があります。
その場合は以下のようにクロージャを引数に渡します。
User::query()
->with(['post' => function ($query) {
$query->select('user_id', 'title');
}])
->get()
一点注意が必要なのは、クロージャの$query->select ()に渡す第一引数は、外部キーである必要があります。
最近のコメント