Laravel 5 在laravel 5中使用唯一列更新模型
我试着跟随,这似乎是我想要的,但没有运气 我有一个Laravel 5 在laravel 5中使用唯一列更新模型,laravel-5,Laravel 5,我试着跟随,这似乎是我想要的,但没有运气 我有一个页面模型,它有一个递增的id、一个标题、一个slug(unique)和一个html列。我希望能够更改标题、slug和html字段。我已尝试添加规则: 'slug' => 'required|unique:pages,slug,{$this->slug}', 对于我的补丁请求,但是当我提交我的表单(使用相同的slug)时,我得到一个错误,它已经出现了。如果我更改slug,标题和html也会更改,但slug不会更改 理想情况下,我宁愿让
页面
模型,它有一个递增的id、一个标题、一个slug(unique)和一个html列。我希望能够更改标题、slug和html字段。我已尝试添加规则:
'slug' => 'required|unique:pages,slug,{$this->slug}',
对于我的补丁
请求,但是当我提交我的表单(使用相同的slug)时,我得到一个错误,它已经出现了。如果我更改slug,标题和html也会更改,但slug不会更改
理想情况下,我宁愿让slug自动生成并在后台更新,但我也无法实现这一点
更新模型时如何允许更改唯一字段,或如何自动生成它?您需要提供带有三个参数的
唯一
规则以添加异常
'slug' => 'required|unique:pages,slug,' . $this->id
$this->id
为空。如何获取id?这将取决于您如何进行验证。您正在使用验证器类吗?在控制器中处理它?URI中是否包含ID<代码>$this->route('id')如果slug在URI中,您可以使用slug检索行(我假设它是唯一的),然后从雄辩的对象返回id。使用类似于Page::where('slug',$this->route('slug'))->first()->id
?我最终使用$this->route('Page')->id
。我在routes.php文件中使用了模型绑定,所以我只需要抓取它,它是我准备好的页面
模型。