Ruby on rails 使用不同服务器时Rails 3区域设置切换
我有一个Rails 3.2.3应用程序,其Ruby on rails 使用不同服务器时Rails 3区域设置切换,ruby-on-rails,internationalization,webrick,unicorn,Ruby On Rails,Internationalization,Webrick,Unicorn,我有一个Rails 3.2.3应用程序,其default\u locale设置为:nl。当我使用Thin或Unicorn启动应用程序时,应用程序的区域设置设置为:en。使用Webrick时,区域设置正确设置为:nl 这个变化是由一个更新了多个第三方gem的提交触发的,尽管我没有特别挑选出任何一个gem升级——我可以分别反转它们并得到相同的结果。然而,当我检查违规提交的父级时,一切都很好 当我在生产模式下在远程服务器上运行应用程序时,一切正常,因此它似乎是我机器的本地应用程序 我已经删除了每一个安
default\u locale
设置为:nl
。当我使用Thin或Unicorn启动应用程序时,应用程序的区域设置设置为:en
。使用Webrick时,区域设置正确设置为:nl
这个变化是由一个更新了多个第三方gem的提交触发的,尽管我没有特别挑选出任何一个gem升级——我可以分别反转它们并得到相同的结果。然而,当我检查违规提交的父级时,一切都很好
当我在生产模式下在远程服务器上运行应用程序时,一切正常,因此它似乎是我机器的本地应用程序
我已经删除了每一个安装的gem并重新安装了它们,这没有什么区别
有人知道什么会触发这种行为吗?尤其是为什么使用webrick或unicorn会带来不同
编辑:我已经查明了将Draper从0.11升级到0.12()将触发的错误。不确定这是否也是原因。在“活动管理”gem触发wich之前,我就遇到了这个问题。您可能想使用早期版本来防止这种情况,我不知道是哪一个,所以您可以稍微玩玩它 另一个选项是在before_筛选器中设置活动的_admin区域设置
config.before_filter :set_admin_locale
设置应用程序\u控制器中的\u管理\u区域设置:
def set_admin_locale
I18n.locale = :nl
end
希望有帮助这个问题在wich被“active_admin”gem触发之前发生在我身上。你可能想用一个早期版本来防止这个问题,我真的不知道是哪一个,所以你可以玩一下 另一个选项是在before_筛选器中设置活动的_admin区域设置
config.before_filter :set_admin_locale
设置应用程序\u控制器中的\u管理\u区域设置:
def set_admin_locale
I18n.locale = :nl
end
希望它能有所帮助我设法将这个问题归结为我自己的Rails应用程序中的一个错误做法,该错误是由于升级了Draper gem而导致的。有一个问题。我设法将这个问题归结为我自己的Rails应用程序中的一个错误做法,它通过升级Draper gem导致了一个错误。有一个.Unicorn可能会记住跨请求的区域设置,但重新启动Unicorn或切换到精简版并不能解决此问题。这可以通过切换到webrick来解决。此链接似乎不相关。Unicorn可能会记住跨请求的区域设置,但重新启动Unicorn或切换到精简版并不能解决此问题。这可以通过切换到webrick来解决。此链接似乎不相关。我不使用active_admin。您是否知道有任何其他gem会触发相同的行为?请检查您的配置文件,如果您的任何gem存在区域设置依赖关系,这就是我的理解。我不使用active_admin。你知道有没有其他的gem会触发相同的行为?只要检查你的配置文件,看看你的gem是否有语言环境依赖性,我就是这么想的。