当表单输入与模式参数不匹配时如何更改消息?

How to change the message when a form input doesn't match the pattern parameter?

pattern 参数可以作为 described here

提供给表单域

示例(来自 here 的正则表达式)

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

当不遵守正则表达式时,将显示一条消息。例如:

如何自定义该消息?

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