В моей модели формы у меня есть пользовательская функция проверки для поля, определенного таким образом.
... class SignupForm extends Model { public function rules() { return [ ['birth_date', 'checkDateFormat'], // other rules ]; } public function checkDateFormat($attribute, $params) { // no real check at the moment to be sure that the error is triggered $this->addError($attribute, Yii::t('user', 'You entered an invalid date format.')); } }
Сообщение об ошибке не отображается под полем формы, когда я нажимаю кнопку отправки, в то время как другие правила, такие как требуемый адрес электронной почты и пароль, отображаются.
Я работаю над собственной формой регистрации, поэтому, чтобы убедиться, что это не проблема, я установил правило
['username', 'checkDateFormat']
и удалили все другие правила, связанные с полем имени пользователя, но сообщение не появляется ни для него.
Я пробовал передавать ничего как параметры checkDateFormat
, я попытался явно передать имя поля addError()
$this->addError('username', '....');
но ничего не появляется.
Каков правильный способ настройки пользовательской функции проверки?