我们有一个CMS应用程序,允许从后端为多个用户创建商店..现在,当我们想要实现翻译时,我们遇到了问题。翻译只是使用语言环境存储,但我们需要的是user.id和语言环境。因为每个用户可以按语言拥有自己的翻译。
我尝试按照此railscast中的描述实现i18n后端,但现在我正在坚持使用 http://railscasts.com/episodes/256-i18n-backends?view=asciicast 每个用户的自定义。
有没有办法在翻译中添加额外的列并询问local和user_id?
非常感谢答案 0 :(得分:0)
对于您遇到的问题,没有一个最佳解决方案。这取决于您的应用程序。鉴于我所掌握的信息,我建议如下:
应用/控制器/ application_controller.rb 强>
class ApplicationController < ActionController::Base
protect_from_forgery with: :exception
before_filter :set_locale
private
def set_locale
I18n.locale = current_user.language || I18n.default_locale
end
end
这会将18n.locale
设置为current_user
的语言设置。显然,您需要在language
模型中使用users
属性才能实现此目的。