表单中有一些输入字段,这是我在Model:
中定义的规则 public static $rules = [
'name' => 'string',
'email' => 'email',
'phone' => 'sometimes|numeric',
'mobile' => 'numeric',
'site_type_id' => 'integer'
];
它们都不是必需的。但是当提交表单时,验证错误出现,电子邮件应该是电子邮件地址,因此对于其他输入
在这种情况下,有一个字段required
是没有意义的,因为laravel总是根据规则验证字段
我知道在提交表单时,空字段的值为null
。我应该如何阻止空字段的字段验证吗?
答案 0 :(得分:5)
在laravel 5.4中nullable
应该用于可选字段:
如果您不希望验证程序将空值视为无效,则通常需要将“可选”请求字段标记为可为空
所以rules
数组应该是这样的:
public static $rules = [
'name' => 'nullable|string',
'email' => 'nullable|email',
'phone' => 'nullable|numeric',
'mobile' => 'nullable|numeric',
'site_type_id' => 'nullable|integer'
];