我目前有一个包含文本字段和 slug 字段的模型。
我验证该 slug 在我的表单请求类中是唯一的:
public function rules()
{
return [
'name' => 'required|min:3',
'slug' => 'required|alpha_dash|unique:questions'
];
}
这在创建时效果很好,并且正确地拒绝创建重复的段。但是,在我的更新方法中,它不会让我保存记录,因为 slug 已经存在。当然,slug确实存在,但它存在于正在编辑的记录中,所以我想继续允许它被保存。但是,它不应该能够更改为另一条记录上的段。
这是我的更新 ArticlesController 方法的样子:
public function update(Article $article, ArticleRequest $request)
{
$article->update($request->all());
return redirect('articles');
}
有办法在 L5 中实现此功能吗?
最佳答案
尝试修改您的规则,如下所示(在表单请求类中):
public function rules()
{
return [
'name' => 'required,min:3',
'slug' => 'required|alpha_dash|unique:categories,slug,'.$this->id')
];
}
这对我有用。
关于php - 在 Laravel 5 中更新时验证唯一的 Slug,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28662283/