php - Laravel 自定义表单请求获取 id
问题描述
我有控制器控制器方法:存储和更新:
public function store(AddEditShopRequest $request)
{
$extra = ['user_id' => Auth::user()->id, 'slug' => str_slug($request->title)];
$shop = Shop::create(array_merge($request->all(), $extra));
return redirect()->back();
}
public function update(AddEditShopRequest $request, Shop $shop)
{
$shop->update($request->all());
return redirect()->back();
}
我有请求:AddEditShopRequest:
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'title' => 'required|string|min:3|max:15|unique:shops,title,' .
$this->id,
]
}
当用户更新商店时,$this->id
让我为空,我尝试了:$this->route('shop')->id
并且工作了,但是当用户商店商店时,laravel 让我错误:Trying to get property 'id' of non-object
。
我该如何解决这个问题?
解决方案
推荐阅读
- raspberry-pi - 我可以仅使用数据线通过 Raspberry pi 0 w 的 USB 端口传输串行数据吗?
- qt - 将操作分配给 QMenu 项
- java - 如何在给定特定类的情况下反转 LinkedList:代码未提供所需的输出
- python - 如何找到两个不同列表中每个元素的平均值
- php - Facebook 营销 - 故事图片
- node.js - API从网关传递后超时,因此无法在客户端获得结果
- postgresql - PostgreSQL - 更改列时无法将 varchar 转换为枚举类型
- c - C程序在fork后挂起
- javascript - Typescript - React 中的多类型情况如何
- oracle - 使用 Oracle APEX 进行流程跟踪