我已将 active_admin 更新到版本 0.3.0 以使国际化工作。但我有问题。
我用 activeadmin 部分更新了我的 pl.yml 文件,如下所示:
pl:
active_admin:
blank_slate:
content: "Nie ma jeszcze rekordów."
link: "Nowy"
dashboard: "Dashboard2"
view: "Podgląd"
这不起作用,所以我尝试将此代码添加到我的 application.rb 中:
config.before_configuration do
I18n.locale = :pl
I18n.load_path += Dir[Rails.root.join('config', 'locales', '*', '.{rb,yml}')]
I18n.reload!
end
现在国际化在开发环境下好像可以了,但是我在其他环境下还是有问题。我的仪表板有问题:键。通常,简而言之,当 I18n 找不到键时,它会输入 key: 大写字母,在本例中将是“Dashboard”。但就我而言,我有这样的事情:
发展:
生产:
有没有人遇到过同样的问题?我做错了什么,还是这是一个 activeadmin 错误?有什么解决办法吗?
最佳答案
我有同样的问题。我需要这样做才能使其在生产和开发中都能正常工作:
config.before_configuration do
I18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s]
I18n.locale = :nl
I18n.default_locale = :nl
config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s]
config.i18n.locale = :nl
# bypasses rails bug with i18n in production\
I18n.reload!
config.i18n.reload!
end
config.i18n.locale = :nl
config.i18n.default_locale = :nl
不是很漂亮,但可能是由 Rails 中的错误引起的。
关于ruby-on-rails-3 - activeadmin + 国际化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7193043/