Rails I18N: ActiveRecord對象本地化一直以來使用 Changing human attribute labels in Rails validation messages 中介紹的方法來本地化 ActiveRecord 字段名稱。該方法簡單實(shí)用,比方說有這樣一個 User model:
只要在該類中加入以下代碼,就可以在 validation 的錯誤信息中顯示中文字段名:
現(xiàn)在 Rails 2.2 為我們帶來了強(qiáng)大的 I18N 功能,沒有必要再用上述方法來實(shí)現(xiàn)本地化了。首先,在 environment.rb 中指定本地化語言:
然后在 config/locales 目錄下新建 cn.yml 文件,并進(jìn)行以下設(shè)置:
非常優(yōu)雅方便。 Error messages 也可以用同樣的方法進(jìn)行設(shè)置。比方說,以前會用:
現(xiàn)在只要在配置文件中加入相應(yīng)信息即可:
舊版本的 rails 應(yīng)用中還需要用到老方法。為方便起見,弄了個 plugin,github 地址: PS: 可以在 script/console 下檢查效果:
|
|