Rails验证错误消息,自定义属性名称

时间:2010-08-26 06:40:03

标签: ruby-on-rails

例如,如果模型具有名为“unit”的属性,但在您的视图中,您将此属性称为“单价”,但在进行验证时,错误消息默认为“unit”,如何修改此说“单价”?

2 个答案:

答案 0 :(得分:2)

使用本地化设置属性的“英语”名称。您可以设置单数和复数名称:

en:
  activerecord:
    attributes:
      product:
        unit:
          one:   Unit price
          other: Unit prices

答案 1 :(得分:1)

我不确定如何更改列名称,但以下是一种可行的解决方法

在模型中

创建一个名为unit_price的虚拟属性

类似这样的事情

attr_accessor :unit_price

validates_presence_of :unit_price, :message => "This is a custom validation message"

def before_validation
   self.unit_price = self.unit
end

欢呼声

sameera