在Rails中更改错误字段名称

我想知道是否有一种方法可以更改与之关联的validation错误的字段名称。 例如,如果我在没有任何数据的情况下提交名字(在表格中真的是fname ),那么它叫喊Fname can't be blank.

是否可以将此更改为First Name can't be blank

现在的一般做法是像这样编辑你的当地人 :

 # config/locales/en.yml en: activerecord: attributes: user: fname: "First Name" 

您的错误消息现在会说“名字不能……”

为了完整起见,您还有另一种选择。 这是将以下内容添加到您的用户模型:

 class User < ActiveRecord::Base HUMANIZED_ATTRIBUTES = { :fname => "First Name" } def self.human_attribute_name(attr, options = {}) # 'options' wasn't available in Rails 3, and prior versions. HUMANIZED_ATTRIBUTES[attr.to_sym] || super end end