23
我想知道是否有方法來更改與其關聯的驗證錯誤的字段名稱。例如,如果我沒有任何數據提交名字(表中確實爲fname
),它就會大喊Fname can't be blank.
在Rails中更改錯誤字段名稱
是否可以將其更改爲First Name can't be blank
?
我想知道是否有方法來更改與其關聯的驗證錯誤的字段名稱。例如,如果我沒有任何數據提交名字(表中確實爲fname
),它就會大喊Fname can't be blank.
在Rails中更改錯誤字段名稱
是否可以將其更改爲First Name can't be blank
?
一般的做法現在給天是編輯locals像這樣:
# 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)
HUMANIZED_ATTRIBUTES[attr.to_sym] || super
end
end
+1。但我認爲'def self.human_attribute_name(attr)'不是必需的。 – Swanand 2011-04-26 05:36:22
in Rails 4我必須爲'self.human_attribute_name(attr)'方法調用添加第二個參數。所以它變成'self.human_attribute_name(attr,options = {})' – Peter 2013-07-05 14:48:17