Laravel if请求对象的语句

时间:2016-06-17 19:45:10

标签: laravel isset lumen

目前正在构建一个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

因为它不存在。我接近以错误的方式写这个逻辑吗?

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

CITTI

2 个答案:

答案 0 :(得分:8)

请改为:

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

答案 1 :(得分:0)

错误“在非对象上调用成员函数参数()”不是因为您没有包含“storeid”输入,而是因为您没有调用Store对象的实例。

也许你做的事情如下:

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