【发布时间】:2015-05-08 17:19:26
【问题描述】:
我正在使用 Laravel 的 Validator 类验证一个简单的表单。
在我的用户模型中,我创建了这个函数来返回一个带有验证规则的数组:
/** function to return the rules to validate a user */
public static function rules($email = null, $username = null) {
return array(
"name" => "required",
"username" => "required|unique:user,username" . ($username ? ",'$username',username" : ""),
"email" => "required|email|unique:user,email" . ($email ? ",'$email',email" : ""),
);
}
我使用的是 RESTful 控制器,因此,当我执行 update() 方法时,我会使用上面的数组验证表单数据。
这是规则函数执行后我的数组:
array (size=3)
'name' => string 'required' (length=8)
'username' => string 'required|unique:user,username,'vitorluis',username' (length=50)
'email' => string 'required|email|unique:user,email,'myemail@gmail.com',email' (length=63)
我告诉 Laravel 忽略这个电子邮件和用户名,但是验证器失败了,说给定的用户名和电子邮件已经存在。
我做错了什么?
【问题讨论】:
标签: php validation laravel