【问题标题】:Rails 4 custom translations per UserRails 每个用户 4 个自定义翻译
【发布时间】:2014-03-24 09:54:38
【问题描述】:

我们有一个 CMS 应用程序,它允许从后端为多个用户创建商店。现在,当我们想要实现翻译时,我们面临一个问题。翻译只是存储在语言环境中,但我们需要的是 user.id 和语言环境。因为每个用户都可以有自己的每种语言的翻译。

我尝试按照此 railscast 中的描述实现 i18n 后端,但现在坚持使用 http://railscasts.com/episodes/256-i18n-backends?view=asciicast 每个用户的定制。

有没有办法在翻译中添加一个额外的列并询问本地和 user_id?

非常感谢

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 internationalization


    【解决方案1】:

    对于您给定的问题,没有单一的最佳解决方案。这取决于您的应用程序。鉴于我所掌握的信息,我建议如下:

    app/controllers/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 的语言设置。显然,您需要在 users 模型中添加 language 属性才能使其正常工作。

    更多示例请查看http://xyzpub.com/en/ruby-on-rails/4.0/i18n.html

    【讨论】:

      猜你喜欢
      • 2014-01-29
      • 2018-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多