在整数 - Laravel 上调用成员函数 update()



我在控制器中调用更新函数,以便可以从编辑表单模板将更改应用于广告。我收到以下错误。

在整数上调用成员函数 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(),
]);

最新更新