我正在使用laravel 5.1.9 LTS。我正在使用开箱即用的laravel的auth功能。我在注册时添加了一个新的表单字段,但未进行验证。 我添加的新表单字段。
<div class="controls">
<div class="controls first">
<select name="account_type" class="form-control">
<option value="0" >Select the account type</option>
<option value="1">Buyer</option>
<option value="2">Seller</option>
<option value="3">Agent</option>
</select>
</div>
<p class="help-block">
{{ $errors->first('account_type') }}
</p>
</div>
验证部分
protected function validator(array $data)
{
return Validator::make($data, [
'email' => 'required|email|max:255|unique:users',
'account_type' => 'required|min:1',
'password' => 'required|confirmed|min:6',
]);
}
我还将account_type放在可填充的受保护变量中,但仍然无法正常工作
答案 0 :(得分:1)
问题是account_type的value参数是作为字符串返回的。当你在一个字符串上调用“min:1”时,它将接受最小长度为1的字符串,你所拥有的所有选项都是如此。
您可以尝试更改此行,以便返回零lenght / null的字符串:
<option value>Select the account type</option>
您可以删除规则“min:1”并将其保留为“required”。