Tôi đã xác nhận sau đây trong mô hình của tôi (Thành viên):Làm cách nào để dịch tên thuộc tính ActiveRecord trong Rails 3.2?
validates :first_name,:length => {:minimum => 2,:maximum => 50},:format => { :with => /[a-zA-Z]+/ }
Tôi có sau trong miền địa phương của tôi yml file:
attributes:
first_name:
too_short: "First name is too short"
too_long: "First name is too long"
invalid: "First name is not valid"
Bây giờ, nếu tôi bắt đầu một rails console
, và viết như sau :
a = User.new
a.valid?
a.errors.full_messages
tôi sẽ thấy các lỗi sau đây:
["First name First name is too short", "First name First name is not valid"]
Như bạn có thể thấy, tên thuộc tính cũng được thêm vào lỗi trường. Cho đến nay, ở khắp mọi nơi trong mã của tôi, tôi đã sử dụng model.errors[:field]
, và điều này sẽ luôn hiển thị cho tôi những chuỗi Tôi có trong file yml, nhưng tôi muốn thay đổi xâu kí tự sang:
attributes:
first_name:
too_short: " is too short"
too_long: " is too long"
invalid: " is not valid"
Và sử dụng full_messages phiên bản. Vấn đề là, tôi không biết làm thế nào để dịch tên thuộc tính. Hãy nói ví dụ, mà tôi muốn thay vì tên đầu tiên, để có tên đầu tiên. Tôi sẽ làm như thế nào?
Không xuất hiện để được làm việc cho đường ray 4.2 – AjaxLeung
nó hoạt động trên đường ray (5.1.3). – hackvan