Как изменить сообщение, если ввод формы не соответствует параметру шаблона?

А patternаргумент может быть передан в поле формы, как описано здесь

Пример (регулярное выражение отсюда)

       <%= f.text_field :username, pattern: "([A-Za-z0-9\-\_]+)" %>

Если регулярное выражение не соблюдается, отображается сообщение. Например:

Как можно настроить это сообщение?

1 ответ

Решение

В patternАтрибут на самом деле является спецификацией HTML, а не Rails. Вы можете использовать title атрибут, чтобы дать пользователям подсказку о том, какой формат ожидается.

<%= f.text_field :username, pattern: "([A-Za-z0-9\-\_]+)",
                            title: "A username can only contain letters, numbers, hyphens and underscores" %>

Дополнительную информацию можно найти здесь: https://html.spec.whatwg.org/multipage/input.html#the-pattern-attribute.

Другие вопросы по тегам