我使用Laravel Form验证来验证表格:
$rules = array(
'user_name' => 'required|min:3|max:20|unique:users',
'email' => 'required|email|max:50|unique:users',
'mobile' => 'required'
);
这对某些事情很有用。但是当我要编辑唯一:用户部分时出现错误“已经被采取”,那么如何将验证写入检查排除编辑行。
如果我这样写,它有效吗?
$rules = array(
'user_name' => 'required|min:3|max:20|unique:users,'.$id,
'email' => 'required|email|max:50|unique:users,'.$id,
'mobile' => 'required'
);
答案 0 :(得分:0)
@ user3099298您的第二组代码看起来没问题。
$rules = array(
'user_name' => 'required|min:3|max:20|unique:users,user_name,' . $user_id, // $user_id = Currently being edited user id.
'email' => 'unique:users,email_address,' . $user_id, // $user_id = Currently being edited user id.
'mobile' => 'required',
);
我在规则中添加了列名 - 也许你可以尝试一下。
请在此处查看documentation
他们通过提供ID来解释如何忽略某些规则。