我有几个翻译隐藏在一个初始化式中,如下所示:
GROUP_GOVERNANCE_STYLES = [
[I18n.t("constants.group_governance_styles.collective"), 1],
[I18n.t("constants.group_governance_styles.electoral_democracy"), 2],
[I18n.t("constants.group_governance_styles.dictatorship"), 3]
]
在我的脑海里。我有:
en:
constants:
group_governance_styles:
collective: "collective"
electoral_democracy: "electoral democracy"
dictatorship: "dictatorship"
不幸的是,当我尝试在视图中呈现这些翻译时,我得到以下错误:
translation missing: en.constants.group_governance_styles.collective
translation missing: en.constants.group_governance_styles.electoral_democracy
translation missing: en.constants.group_governance_styles.dictatorship
我也试过删除作用域,但翻译仍然出现缺失。还有别的办法吗?也许有我不知道的初始化器的默认作用域?
当然,翻译是在初始化器之后加载的。试着把它放到environment.rb
如果你想在其他初始化器文件中使用你的翻译文件,你可以添加一个I18n
初始化器。
配置初始化/i18n.rb
# Load application custom translations in order to use them in other initializers
I18n.load_path += Dir[Rails.root.join('config', 'locales', '*.{rb,yml}').to_s]