我有一个LocationDivision
模型存在division_id
并且division_name
存在。我想通过将数据存储在表中来获取该division_id
数据users
。
用户模型
public function division()
{
return $this->belongsTo(LocationDivision::class, 'division_id');
}
控制器
public function editProfile()
{
$users = User::with('division')->get();
$divisions = LocationDivision::select('division_id', 'division_name')->orderBy('division_name')->get();
$districts = LocationDistrict::select('id', 'district_name')->orderBy('division_id')->get();
$sub_districts = LocationSubDistrict::select('id', 'sub_district_name')->orderBy('district_id')->get();
$branches = LocationBranch::select('id', 'branch_name')->orderBy('sub_district_id')->get();
$zips = LocationZip::select('id', 'zip_code')->orderBy('zip_code')->get();
return view('durrbar.accounts.home.settings', compact('users', 'divisions', 'districts', 'sub_districts', 'branches', 'zips'));
}
刀片/视图
@foreach ($users as $user)
<option value="{{ $user->division->division_id }}">
{{ $user->division->division_name }}
</option>
@endforeach
毕竟,我遇到了错误:
尝试在 null 上读取属性“division_id”
更新
通过使用->has('division')
,因为$users = User::with('division')->has('division')->get()
它工作正常。但是当我想使用多个 eloquent$users = User::with('division', 'district', 'subdistrict', 'branch', 'zip')->has('division', 'district', 'subdistrict', 'branch', 'zip')->get();
时,它会给出同样的错误。