Каково правило, позволяющее вводить только текст для поля с именем поля?

У меня есть модель регистрации, в которой у меня есть поле имени для ввода только имени. Это поле имени я объявляю в правиле модели формы регистрации как «обязательное». Но я хочу, чтобы был разрешен только текстовый ввод комбинации заглавных и строчных букв. В названии не должно быть специальных символов и четных цифр. Какое правило для этого???

правило:

[['full_name', 'email', 'input_password', 'input_confirm_password'], 'required']

из этого я хочу применить вышеуказанное только для full_name. Как это сделать??


person Shaggie    schedule 26.12.2014    source источник


Ответы (1)


Вы можете увидеть полный список доступных валидаторов здесь. Для ваших целей подходит RegularExpressionValidator.

Добавьте это в свой rules:

['full_name', 'match', 'pattern' => '...'],

Шаблон зависит от языка, который вы используете для имен. Для английских букв это тривиальная задача, и вы можете просто указать буквы.

В противном случае это более сложно. Вы можете проверить, например, этот вопрос.

В качестве альтернативы вы можете исключить только самые нежелательные символы.

Другой способ — оставить это на совести пользователя и использовать StringValidator:

['full_name', 'string'],
person arogachev    schedule 26.12.2014