![[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)
![[Laravel]blade上で変数の存在確認](https://www.yukiiworks.com/wp-content/uploads/2019/05/laravel-150x150.png)
![[Swift]WKWebViewでピンチイン、アウトを無効にする方法](https://www.yukiiworks.com/wp-content/uploads/2019/04/swift-150x150.png)
![[Mac]任意のポートを使用しているプロセスを調べてKillする方法](https://www.yukiiworks.com/wp-content/uploads/2019/03/code1211IMGL1494_TP_V4-150x150.jpg)
![[iOS]XPC connection interruptedエラーについて](https://www.yukiiworks.com/wp-content/uploads/2019/09/Xcode-150x150.png)
![[Flutter]debugとreleaseビルドをコードから判別する方法](https://www.yukiiworks.com/wp-content/uploads/2020/08/flutter-150x150.png)
![[Kotlin][Android]スプラッシュ画面の作成](https://www.yukiiworks.com/wp-content/uploads/2019/04/kotlin-150x150.png)

