2017-03-10 42 views
0

我有问题,我laravel valdationlaravel验证不通过我没有必填字段

的问题是:

我有两个没有必填字段(密码和生日)

public function rules() 
    { 
     return [ 
      'name'=>'required', 
      'email'=>'required|email|unique:users,email,'.Auth::id(), 
      'birthday'=>'date', 
      'password'=>'confirmed|min:6', 

     ]; 
    } 

如果他们是空的,我不能通过生日和密码

错误是

The birthday is not a valid date. 
The password must be at least 6 characters. 

我做dd(Input::All())规则函数内部和这两个字段为空(null)

有关此问题的任何想法? ? ?

回答

4

您需要添加nullable验证:

return [ 
    'name'=>'required', 
    'email'=>'required|email|unique:users,email,'.Auth::id(), 
    'birthday'=>'nullable|date', 
    'password'=>'nullable|confirmed|min:6', 
]; 

这将使你的字段为空。但是,如果它们不是空的,它们将受到其他验证规则的限制(例如date)。

+0

它的工作很好,非常感谢你,我总是做和我的问题一样,但没有问题,我没有使用可为空之前,为什么现在?? – yasmin