【发布时间】:2017-06-23 00:15:42
【问题描述】:
我正在使用Apartment gem 为我们应用程序中的每个请求切换到 postgre 架构。找到租户后,我根据数据库字段设置语言环境:
I18n.locale = current_tenant.locale || I18n.default_locale
这非常适合切换语言。现在我有一个客户要求更改 yml 文件中的单个键。我想为我们的客户提供一种数据库驱动的方式来覆盖某些键,但我不确定如何设置 I18n 后端来覆盖单个键。我可以使用active_record gem,但这会将翻译存储在全局范围内,因此如果我为一个租户覆盖,它会覆盖所有租户。
我想我需要一种方法来预加载翻译并通过租户子域而不是语言来查找它们。我发现的所有方法似乎都是在初始化程序中进行后端加载,而不是按请求进行,所以我不知道该怎么做。
【问题讨论】:
标签: ruby-on-rails ruby postgresql internationalization rails-i18n