Валидатор Зависимый required

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Uterm
Сообщения: 82
Зарегистрирован: 2013.11.18, 16:08

Валидатор Зависимый required

Сообщение Uterm »

Добрый день!
Мне надо сделать нестандартную валидацию полей в форме, я назвал ее "Зависимый required".
Например на форме 3 поля: Фамилия, Имя, Отчество. Если пользователь начал заполнять какое-то одно из них, то другие два тоже обязательно должны быть заполнены, т.е. эти три поля должны быть или все пустые, или все заполнены. Как такое можно реализовать?
Uterm
Сообщения: 82
Зарегистрирован: 2013.11.18, 16:08

Re: Валидатор Зависимый required

Сообщение Uterm »

Код: Выделить всё

[['firstname', 'lastname'], 'required', 'when' => function($model) {
    return false;
}],
 
Почему то если сделать так в rules вываливаются ошибки валидации необходимости заполнить эти поля, хотя callback возвращает false.
andrei.obuhovski
Сообщения: 610
Зарегистрирован: 2015.07.16, 10:50

Re: Валидатор Зависимый required

Сообщение andrei.obuhovski »

т.к. вы только для серверной валидации написали условие
Uterm
Сообщения: 82
Зарегистрирован: 2013.11.18, 16:08

Re: Валидатор Зависимый required

Сообщение Uterm »

А если мне не нужна валидация на клиенте? Если дописывать функцию whenClient, то нужно прописывать id инпутов, а это как то неочень если модель будет в нескольких формах. У меня например id получились примерно такими: firstname-1-0-lastname. Как такие id прописать в js? Попробовал просто не писать тело функции в whenClient, работает, но это же бред?
Ответить