部署在Heroku上的语言环境

时间:2013-02-03 21:59:42

标签: ruby-on-rails ruby heroku internationalization

我在Heroku上部署了我的应用程序,用Ruby on Rails编写。我已经进行了以下配置来读取locales目录,位于config / application.rb:

# The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
config.i18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')]
config.i18n.default_locale = :pt

目录结构如下:

config
    locales
        defaults
            en.yml
            pt.yml
        models
            my_model
                en.yml
                py.yml
            my_model_2
                en.yml
                py.yml
            ...
        views
            my_view_1
                en.yml
                py.yml
            my_view_2
                en.yml
                py.yml
            ...

只有存储在defaults / pt.yml的语言环境才有效。

在我的开发环境中,所有文件都在运行。

有什么不对?

1 个答案:

答案 0 :(得分:1)

所有缺少的是在配置中调用to_s

config.i18n.load_path += 
  Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}')]

应该是:

config.i18n.load_path += 
  Dir[Rails.root.join('config', 'locales', '**', '*.{rb,yml}').to_s]