首页 > 解决方案 > 为设计中的额外字段添加自定义错误消息

问题描述

我正在开发一个 Ruby on Rails 应用程序,我正在使用 Devise 进行用户身份验证,我在表单中添加了一个额外的字段,现在我想为该字段添加自定义错误消息(请输入格式为 John# 的正确战斗标签123),如果用户在字段中输入了错误的战斗标签格式。

一些解决方案建议您应该在 en.yml 中添加消息,但我不明白在哪里进行更改。

   <div class="field">
    <%= f.label :battletag %><br />
    <%= f.text_field :battletag, autofocus: true, 
                  pattern: '[a-zA-Z]{1}[a-zA-Z0-9]{2,11}#[0-9]+',
                  placeholder: 'Johndoe#123'  %>
   </div>

标签: ruby-on-railsdeviseinput-field

解决方案


我通常在模型中做这样的事情,所以我猜在User.rb,假设你的模型被命名为User

validates :battletag, format: { with: /[a-zA-Z]{1}[a-zA-Z0-9]{2,11}#[0-9]+/, :message => 'Please enter correct battletag with format John#123'}

http://guides.rubyonrails.org/active_record_validations.html#format


推荐阅读