メサイア・ワークス

laravel8のwithでリレーション先のモデルを取得する時に、欲しいカラムだけを指定する。

laravel8のwithでリレーション先のモデルを取得する時に、欲しいカラムだけを指定する。

参考URL
https://qiita.com/hayato07/items/a7809b8aae163909f8d5
https://mseeeen.msen.jp/laravel-5-5-get-specified-column-with-with/

テーブルのカラムが多いと、必要なカラムだけ指定して取得したいのだけど、->get([‘カラム1′,’カラム2’]);みたいな指定だと
withで指定したリレーション先のカラムは、メインのcategoryテーブルに無いよ!ってエラーになる。

リレーション名の後ろにコロンをつけて、カラム名をカンマ区切りで指定できるらしい。

なぜかuserはOKで、postはNULLになった。
リレーションのキーカラムは指定しないとNULLなるみたい。’post:id,title’ならカラム指定で取得できた!

こうなると、リレーション先のリレーション先のカラムも指定したい!
ドット記法で、つなげたら行けた!

hasmanyのリレーションを記述する時にも使える!!
app/Model/User.php

モバイルバージョンを終了