0
クロックメソッドからモデルメソッド "model_method"が呼び出されると、I18n.localeは常にデフォルトのロケールに等しくなります。クロックワークと共にI18n
現在のロケールをモデルメソッドに渡すにはどうすればよいですか?
clockwork.rb
のパート:book.rb
の
every(10.minutes, 'test') do
Book.delay(:queue => 'some_queue').model_method
end
パート:
def self.model_method
...
message = I18n.t('some_text')
# always equals to ":en"
end
をしかし、私は、Dどのユーザーが現在のロケールであるかわからない – Zelenka
ユーザーロケールはブラウザでのみ使用できます。 Railsの外にあるデーモン/スクリプトでは取得できません。ユーザーロケールをユーザーモデルに保存し、スクリプト/デーモンでフェッチします。 –
あなたの最後の文章はあなたの答えに詳しく記述できますか?ユーザーロケールをモデルにどのくらい保存するのですか? – Zelenka