3
例如,如果某個模型具有名爲「unit」的屬性,但在您的視圖中將此屬性稱爲「單價」,但在進行驗證時,錯誤消息默認爲「單位」,我怎麼修改這個來說「單價」?Rails驗證錯誤消息,自定義屬性名稱
例如,如果某個模型具有名爲「unit」的屬性,但在您的視圖中將此屬性稱爲「單價」,但在進行驗證時,錯誤消息默認爲「單位」,我怎麼修改這個來說「單價」?Rails驗證錯誤消息,自定義屬性名稱
使用本地化來設置屬性的「英文」名稱。您可以設置單數和複數名:
en:
activerecord:
attributes:
product:
unit:
one: Unit price
other: Unit prices
我不知道如何更改列名,但下面是一個工作的解決方法
在模型中創建一個名爲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
似乎並不適合我。 我還沒有在本地化工作,有沒有什麼我需要做之前,這將工作? – fivetwentysix 2010-08-26 07:23:32
修復了我的答案:我的答案是型號名稱,而不是屬性名稱。 – 2010-08-26 07:50:55
@Andrew Vit這是錯誤的答案。在具有屬性名稱的行之前,需要一行包含模型名稱的行。請參閱示例如何解決同一問題:http://stackoverflow.com/questions/808547/fully-custom-validation-error-message-with-rails – 2012-02-18 15:01:50