【问题标题】:Rails Migration: set locale?Rails 迁移:设置语言环境?
【发布时间】:2012-07-10 16:11:35
【问题描述】:

我有一些将 CSV 导入现有模型的迁移(使用 create!(..))。由于我添加了更多验证,因此迁移在执行时中断:

Validation failed: Address translation missing: en.activerecord.errors.messages.is_invalid

我们使用德语作为默认语言,所以我有点不确定 Rails 为什么要寻找英文翻译。我们正在使用 rails-i18n gem。

# application.rb
config.i18n.default_locale = :de
config.i18n.available_locales = [:de, :en]

谁能告诉我:

1) 为什么 Rails 需要英文翻译? 2) 为什么Rails 还是找不到英文翻译?

谢谢。

【问题讨论】:

    标签: ruby-on-rails internationalization


    【解决方案1】:

    要回答数字1,您需要先设置语言环境,设置默认语言环境不会这样做:

    config.i18n.locale = :de
    

    数字 2 似乎有点陌生,但请注意 rails-i18n 最近才包含基本的“en”语言环境,之前它有“en-US”和“en-GB”等等。看来您需要将 rails-i18n 版本提升到 0.6.5 或更高版本。

    【讨论】:

    • 谢谢,我在 application.rb 中做了这个,现在我得到了正确的德语翻译。不过,我已经有 v0.6.5,为什么缺少正确的英文翻译?是因为我有一个空的 en.yml 文件吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    • 1970-01-01
    • 2011-09-20
    • 2015-08-05
    • 1970-01-01
    • 2012-01-18
    • 2014-09-14
    相关资源
    最近更新 更多