Laravel 请求对象的 if 语句

Laravel if statement for request object

目前正在构建 API。我正在研究一个更新功能,除了传入的请求。所以:api.dev.com/?api_key=asdf&storeid=2 等

现在在后端,我正在接受请求,然后我尝试编写一些逻辑来检查请求是否包含 storeid,然后更新该条目等。

但是当我写我的逻辑时,我这样做了

if(isset($request->storeid))
    $store->id = $request->storeid;

如果我不在我的 put 请求中包含 storeid,那么我会得到:

Call to a member function parameter() on a non-object

因为它不存在。我是否正在以错误的方式编写此逻辑?

我想让用户自行更新他们想要的记录。因此他们不必在请求中包含所有变量。只有那些需要更新的。

花旗

改为这样做:

if($request->has('storeid')) {
    ...

错误 "Call to a member function parameter() on a non-object" 不是因为您没有包含 "storeid" 输入,而是因为您没有调用 Store 对象的实例。

也许如果你这样做:

if(isset($request->storeid))
  $store = Store::findOrFail($request->storeid)