我的模特中有关系:
public function profile()
{
return $this->hasOne('App\Models\Profile');
}
并形成:
{!! Form::model($user, ['route' => ['profile.update'], 'method' => 'PATCH']) !!}
...
<div class="form_block"><span class="form_label">First Name</span>{!! Form::text('profile[first_name]') !!}</div>
...
问题是,默认情况下,关系是以“懒惰”方式获取的,因此我需要手动调用 $ user-&gt; profile-&gt; first_name 作为表单值。 或者在控制器中使用类似的东西:
$user_id = Auth::user()->id;
$user = User::with('profile')->find($user_id);
所以也许有些雄辩的人可以选择控制关系上的延迟负载? 没有找到任何关于它的信息。
答案 0 :(得分:2)
您正在寻找Laravel称之为Lazy Eager Loading的内容。
$userWithProfile = Auth::user()->load('profile');