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