在 Heroku 中部署错误:es 不是有效的语言环境
Posted
技术标签:
【中文标题】在 Heroku 中部署错误:es 不是有效的语言环境【英文标题】:Error to deploy in Heroku :es is not a valid locale 【发布时间】:2014-11-14 14:33:36 【问题描述】:我有下一个错误,我不知道如何解决,我正在使用 rails 4.1 和 ruby 2.1.3 问题出在我的语言环境文件上,我的应用程序默认使用葡萄牙语,我翻译了所有必需的文件,在我的本地是正确的,但什么时候做
heroku 运行 rake db:migrate
我有下一个错误:
运行
rake db:migrate
连接到终端... up, run.5369 rake 中止! I18n::InvalidLocale: :es 不是有效的语言环境 /app/vendor/bundle/ruby/2.1.0/gems/i18n-0.7.0.beta1/lib/i18n.rb:284:inenforce_available_locales!' /app/vendor/bundle/ruby/2.1.0/gems/i18n-0.7.0.beta1/lib/i18n/config.rb:34:in
default_locale=' /app/vendor/bundle/ruby/2.1.0/gems/i18n-0.7.0.beta1/lib/i18n.rb:35:indefault_locale=' /app/config/environments/production.rb:75:in
block 在'
我有一个语言环境文件,并且是:
I18n.load_path += Dir[Rails.root.join('lib', 'locales', '*.rb,yml')] I18n.load_path += Dir[Rails.root.join('config', 'locales', '**', '*.rb,yml')]
I18n.available_locales = Dir[Rails.root.join('config', 'locales', '*.yml')].collect |l|语言环境 = l.scan(/.+/(..).yml/)[0]; locale[0].to_sym 除非 locale.nil?.delete_if |locale| locale.nil?
I18n.default_locale = [:en, :es] I18n.config.enforce_available_locales = 真
在 production.rb 中也有:
I18n.default_locale = :es
我尝试了所有可能的选项,但我没有解决方案 感谢您的时间!
【问题讨论】:
【参考方案1】:这个问题的解决方法很简单,你需要在你的application.rb中添加这段代码:
I18n.enforce_available_locales = false
问候!
【讨论】:
以上是关于在 Heroku 中部署错误:es 不是有效的语言环境的主要内容,如果未能解决你的问题,请参考以下文章
尽管 SECRET_KEY 错误,但部署在 Heroku 上的 Django 应用程序仍然有效
Magnific Popup Lightbox 在 Ruby on Rails 开发中有效,但在部署到 Heroku 时无效