我有一个用户模型,需要有唯一的电子邮件地址,但我也想让它们留空,以防用户没有电子邮件...我在文档中看到有一种方法可以为独特和异常制定规则对于一个id ...但我不知道如何使这个允许null或空白,但如果不是这样就是唯一的.对不起似乎这很简单,但我想不出答案.
public static $adminrules =
'email' => 'email|unique:users,email,null,id,email,NOT_EMPTY'
);
Run Code Online (Sandbox Code Playgroud)
编辑可能是因为使用规则required
是不够的,因为空白或null将在这些情况下通过验证.我可能有一个相关的错误,所以我不能添加超过1个空白电子邮件,所以我无法验证这一点.
public static $adminrules =
'email' => 'email|unique:users'
);
Run Code Online (Sandbox Code Playgroud)
小智 7
我试过这个。在“有时”之前添加“可为空”。
$validator = Validator::make($request->all(), [
'email' => 'nullable|sometimes|unique:users',
]);
Run Code Online (Sandbox Code Playgroud)
你应该尝试这个:
$v->sometimes('email', 'email|unique:users,email', function($input)
{
return !empty($input->email);
});
Run Code Online (Sandbox Code Playgroud)
$v 是您的验证器对象,您基本上是说,如果电子邮件字段不为空,它也应该是唯一的(电子邮件列中不应该有具有此值的用户表记录)。
归档时间: |
|
查看次数: |
1897 次 |
最近记录: |