用一行更新关系模型 - Laravel
Update a Relationship Model with one Line - Laravel
我有一个庞大的编辑页面,值取自 4 个表。我将它们全部放在一个对象中,然后对哪些去哪里进行排序。虽然当我调用我的主模型时,我可以通过传入对象或数组来更新它的关系吗?
主要模型
$officiant = Officiant::find($id);
它的关系是"detail"和"profile"
示例:
$officiant->fname = $request->fname;
$officiant->lname = $request->lname;
$officiant->phone = $request->phone;
$profile = new \StdClass();
$profile->gender = $request->gender;
$profile->profile = $request->profile;
$detail = new \StdClass();
$detail->street = $request->street;
$detail->city = $request->city;
我可以像这样传递它来更新主祭
$officiant->update(array ($officiant));
尽管如此,我可以通过做类似的事情来更新详细信息吗,如
$officiant->detail->update(array ($detail));
$officiant->profileupdate(array ($profile));
如果您是通过关系更新,应该是
$officiant->detail()->update(array ($detail));
使用 ->detail() 而不是 ->detail 发送一个可以与 update() 链接的查询生成器实例。
我有一个庞大的编辑页面,值取自 4 个表。我将它们全部放在一个对象中,然后对哪些去哪里进行排序。虽然当我调用我的主模型时,我可以通过传入对象或数组来更新它的关系吗?
主要模型
$officiant = Officiant::find($id);
它的关系是"detail"和"profile"
示例:
$officiant->fname = $request->fname;
$officiant->lname = $request->lname;
$officiant->phone = $request->phone;
$profile = new \StdClass();
$profile->gender = $request->gender;
$profile->profile = $request->profile;
$detail = new \StdClass();
$detail->street = $request->street;
$detail->city = $request->city;
我可以像这样传递它来更新主祭
$officiant->update(array ($officiant));
尽管如此,我可以通过做类似的事情来更新详细信息吗,如
$officiant->detail->update(array ($detail));
$officiant->profileupdate(array ($profile));
如果您是通过关系更新,应该是
$officiant->detail()->update(array ($detail));
使用 ->detail() 而不是 ->detail 发送一个可以与 update() 链接的查询生成器实例。