![[Laravel]ネストされたテーブルのリレーションを取得する方法](https://www.yukiiworks.com/wp-content/uploads/2019/05/laravel.png)
はじめに
Laravelにてネストされたテーブルのリレーションを取得する方法。
ユーザーテーブル→ユーザー基本情報テーブル→ユーザー詳細情報みたいなリレーションの貼られたテーブル(リレーション先の先みたいな。。。)でデータをまとめて取得したい時に使います。
テーブル例は無理やり感がありますが。。。
方法
ネストされたテーブルのリレーションは以下のように取得できます。
もちろんモデルにリレーションの定義がされているのが前提です。
1 | User::with('userBaseInfo.userInfoDetail')->get(); |
userBaseInfoはユーザーに紐づくユーザー基本情報テーブルとして定義されているとします。
userInfoDetailはユーザー基本情報テーブルに紐づくユーザー詳細テーブルとした場合です。
ドットでつなげてその先のリレーションが定義されているメソッドを指定することによってまとめて取得することができます。
また、以下のようにさらにドットでつなげてリレーション先の先の先みたいなネストされたテーブルのリレーションも取得できます。
1 | Questionnaire::with(‘questions.answers.userAnswers')->get(); |
知っていると知っていないでは実装に結構違いが出てくると思いますよね。
以上です。
![[Laravel]Formの配列をバリデーションでチェックする方法](https://www.yukiiworks.com/wp-content/uploads/2019/05/laravel-300x209.png)
![[Xcode]アップデートが保留中で起動できない、アップデートはしたくない場合について](https://www.yukiiworks.com/wp-content/uploads/2019/09/Xcode-150x150.png)
![[Laravel]バリデーションルールを使って特定のカラムで存在チェックする方法](https://www.yukiiworks.com/wp-content/uploads/2019/05/laravel-150x150.png)
![[iOS13]SceneDelegateを使用したURL Schemeによるアプリ起動処理](https://www.yukiiworks.com/wp-content/uploads/2019/04/swift-150x150.png)
![[Flutter]flutter_svgにてEXCEPTION CAUGHT BY SVG](https://www.yukiiworks.com/wp-content/uploads/2020/08/flutter-150x150.png)
![[DB2]ロード後に表スペースにアクセスできない問題について](https://www.yukiiworks.com/wp-content/uploads/2019/03/code1211IMGL1494_TP_V4-150x150.jpg)

