null許可のカラムに対してリレーションを設定して、null時にbelongsToなどで値を取得しようと
“Trying to get property ‘取得したいカラム名’ of non-object”
のエラーが発生する。
例えば
membersテーブル
id
area_id
areasテーブル
id
name
があったとして
{{ $member->area->name }}
で表示しようとした時、members.area_idがnullだとエラーが発生する。
その場合は、リレーションの設定に
->withDefault()を足して以下のようにすると、null時はエラーにならずnull(空文字)表示される。
return $this->belongsTo(Area::class);
↓
return $this->belongsTo(Area::class)->withDefault();