我在控制器中调用更新函数,以便可以从编辑表单模板将更改应用于广告。我收到以下错误。
在整数上调用成员函数 update((
这是我的更新控制器代码
public function update(Request $request, $id){
PropertyAdvert::where('id', $id)->where('user_id', Auth::id()->update
([
"photo" => base64_encode(file_get_contents($request->photo->path())),
"address" => $request->address,
"county" => $request->county,
"town" => $request->town,
"type" => $request->type,
"rent" => $request->rent,
"date" => $request->date,
"bedrooms" => $request->bedrooms,
"bathrooms" => $request->bathrooms,
"furnished" => $request->furnished,
"description" => $request->description,
"user_id" => Auth::id(),
]));
return back();
}
我的编辑表单很大,所以我认为我不应该发布这个。
有什么想法吗?
这是一个
错字。您是在Auth::id()
上调用->update
,而不是查询。在;
之前移动最后一个支架,以结束->where(..)
部分。
在这里,这应该有效:
PropertyAdvert::where('id', $id)->where('user_id', Auth::id())->update([
"photo" => base64_encode(file_get_contents($request->photo->path())),
"address" => $request->address,
"county" => $request->county,
"town" => $request->town,
"type" => $request->type,
"rent" => $request->rent,
"date" => $request->date,
"bedrooms" => $request->bedrooms,
"bathrooms" => $request->bathrooms,
"furnished" => $request->furnished,
"description" => $request->description,
"user_id" => Auth::id(),
]);