🥝
Laravel テーブル結合先の値が取れない時はModelをチェックする
artisan tinkerで結合先のテーブルから値を引っ張る方法を探してたけど、値が取れない…
と思ったら、外部キー設定されてなかった、だから取れないんだと思って外部キーを設定したけど、まだ値が取れない。
そんな時UserのModelを眺めてたら気になるメソッドを発見。
試しにこのメソッド名そのままコピーして値取れるか検証したら、なんとできた!
例:userテーブル
user_id
municipality_id ->Municipalityテーブルへ結合
public function userMunicipality()
{
return $this->belongsTo(Municipality::class, 'municipality_id');
}
$user->userMunicipality
でMunicipalityテーブル1行まるごと取得できた。
ちなみに、外部キーの設定をしていなくてもできた。
Discussion