Как добавить свои правила валидации к имени пользователя бандла FOSUserBundle?

На сайте для регистрации использую FOSUserBundle, только вот он позволяет для username использовать любый символы.



Как добавить валидатор для username разрешающий только [a-b0-9] латиницу?
  • Вопрос задан
  • 3140 просмотров
Решения вопроса 1
stnw
@stnw
Можно в класс User добавить метод loadValidatorMetadata.
Мой пример никнейма на проекте (регулярку нужно заменить на необходимый):

public static function loadValidatorMetadata(ClassMetadata $metadata)
{
$metadata->addPropertyConstraint(
'nickname',
new Regex(array(
'pattern' => '/^[а-яёa-z0-9_\- ]+$/ui',
'groups' => array('Profile', 'forum'),
'message' => 'Ник не должен содержать знаков %, !, ~, #, &, №.'
))
);

}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы