3 回答
TA贡献1830条经验 获得超3个赞
如果您需要更新现有记录:
$user_id = auth()->user()->id;
$update = Profile::where('user_id',$user_id)->update([
'name'=>$request->name,
'gender'=>$request->gender,
'country'=>$request->country,
'bod'=>$request->bod,
'description'=>$request->description
]);
if($update){
return redirect()->route('profile.index');
}else{
//do something if fails
}
但是,如果您需要添加新的配置文件,那么:
$create= Profile::create([
'user_id'=>auth()->user()->id,
'name'=>$request->name,
'gender'=>$request->gender,
'country'=>$request->country,
'bod'=>$request->bod,
'description'=>$request->description
]);
if($create){
return redirect()->route('profile.index');
}else{
//do something if fails
}
TA贡献1820条经验 获得超10个赞
试试这个,假设您正在尝试发布新记录:
public function store(Request $request) {
$profile = new Profile;
$profile->name = $request->input('name');
$profile->gender = $request->input('gender');
$profile->country = $request->input('country');
$profile->bod = $request->input('bod');
$profile->description = $request->input('description');
$profile->save();
return redirect()->route('profile.index');
}
TA贡献1936条经验 获得超7个赞
Profile如果模型首先存在,您的代码只会更新模型。如果您不知道记录是否存在,您可能需要尝试updateOrCreate方法。它将更新现有记录,或者,如果没有这样的记录,它将创建一个新记录:
public function store(Request $request) {
$user_id = auth()->user()->id;
Profile::updateOrCreate(
['user_id' => $user_id], // search requirements
[
// fields to update or create record with
'name' => request('name'),
'gender' => request('gender'),
'country' => request('country'),
'bod' => request('bod'),
'description' => request('description')
]
);
return redirect()->route('profile.index');
}
- 3 回答
- 0 关注
- 161 浏览
添加回答
举报
