![[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)
![[Python][Crypto]Module Not Found Error](https://www.yukiiworks.com/wp-content/uploads/2019/11/python-logo-150x150.png)
![[Swift]WKWebViewでピンチイン、アウトを無効にする方法](https://www.yukiiworks.com/wp-content/uploads/2019/04/swift-150x150.png)
![[DB2]ペンディング状態の解除](https://www.yukiiworks.com/wp-content/uploads/2019/03/code1211IMGL1494_TP_V4-150x150.jpg)
![[Kotlin]0パディングした文字列を返すExtension](https://www.yukiiworks.com/wp-content/uploads/2019/04/kotlin-150x150.png)
![[Laravel]name属性の配列要素をoldで取得する方法](https://www.yukiiworks.com/wp-content/uploads/2019/05/laravel-150x150.png)
![[javascript]ブラウザの戻るボタンで戻ってきた時になんらかの処理をする方法](https://www.yukiiworks.com/wp-content/uploads/2019/05/javascript-150x150.png)
![[Xcode]error: unable to parse contents of file list ‘<project path>/Pods/Target Support Files/Pods-XXX/Pods-XXX-frameworks-Debug-input-files.xcfilelist’でビルドエラーの解消方法](https://www.yukiiworks.com/wp-content/uploads/2019/09/Xcode-150x150.png)

