Resque不支持应用程序配置

时间:2012-09-11 10:40:10

标签: ruby-on-rails localization internationalization config resque

我一直非常舒服地使用resque,但是对于以下场景

在我的一个执行方法

class A < ActiveRecord::Base
  def self.perform
    B.something
  end
end

class B < ActiveRecord::Base
  def self.something
   l = Misc.get_locale
    ....
    ....
  end
end

class Misc
  def self.get_locale
    return I18n.locale
  end
end

问题是它始终将I18n.locale作为:en 返回,即使在我的应用程序配置中,我已将其设置为:us_en (或其他),如下所示

config.i18n.default_locale = :us_en
config.i18n.locale = :us_en

是因为我正在从类中读取I18n.locale而不是rails模型吗? 还是因为其他原因?

1 个答案:

答案 0 :(得分:0)

我认为resque更有可能没有读取你的rails配置。

你可以尝试在初始化程序中设置它(我相信应该阅读)。

config/initalizers/i18n.rb

I18n.default_locale = 'en-US'
I18n.locale = 'en-US'

作为旁注,语言代码首先出现在用于识别语言的bcp47标准中的区域代码之前(虽然我只是肛门!)。