Rails全球化后备问题

时间:2018-09-10 09:03:27

标签: ruby-on-rails fallback globalize

我有一个使用Globalem GEM的Rails引擎:

  • 导轨(5.0.7)
  • 全球化(5.1.0)

我已在模型中添加了以下内容:

module IsWebEngine
  class Website < ApplicationRecord

    translates :name, :fallbacks_for_empty_translations => true
    validates :name, presence: true

    ...
  end
end

,并将以下内容添加到application.rb:

config.i18n.fallbacks = true

我创建了翻译表并进行了迁移,并从原始表中删除了名称列。

我正在使用2个语言环境:en和:de。如果我添加一个:en名称,例如“英文名称”将以下内容添加到翻译表中:

| tbl_id: 1 | locale: 'en' | name: 'English Name' |

如果我导航到带有:en区域设置的视图,则可以看到名称“英语名称”,但是如果我将区域设置切换为:de,则该名称为空-我希望(就像)将其默认设置为:en值,如果:de名称不存在。

如果我添加:de名称:

| tbl_id: 1 | locale: 'de' | name: 'German Name' |

然后,设置:de区域设置时,视图中将显示“德语名称”。

当翻译表中不存在:de时,如何获得对:en的后备工作?

感谢您的帮助!

乔恩

0 个答案:

没有答案