Я проверяю простую форму, используя Validator
класс Laravel.
В моей модели User я создаю эту функцию для возврата массива с правилами проверки:
/** 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 Controller, поэтому, когда я выполняю метод update (), я проверяю данные формы с помощью массива выше.
Это мой массив после выполнения функции rules:
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,'[email protected]',email' (length=63)
Я говорю Laravel игнорировать этот адрес электронной почты и имя пользователя, но валидатор не работает, говоря, что данное имя пользователя и адрес электронной почты уже существуют.
Я что то не так делаю?