根据URL与Rails使用不同的时区

时间:2014-05-12 15:44:26

标签: ruby-on-rails timezone locale

在我的项目中,我有不同的“语言环境”:en,fr,... 我们可以在URL中看到它作为localhost:3000 / \ locale \ /......

我搜索gem或方法来建立这个定位和时区之间的关系。事实上,我不想使用操作系统时区,而是根据我的URL使用时区。

我在Rails上指定我是法国人和新开发人员。

感谢您将来的回答。

1 个答案:

答案 0 :(得分:4)

区域设置通常没有足够的信息来指定时区。例如:

  • en只是意味着"英语" - 那是在美国吗?英国?加拿大?澳大利亚?在其他地方?
  • 即使有更多规格,它也不足以将其固定下来:en-US覆盖整个美国,它有多个时区
  • 虽然您 可以拥有带有"变体的区域设置ID"更具体地指定位置,这将是非常不寻常的,并且在那时你将非常不标准。

此外,仅仅因为用户想要查看根据特定区域设置格式化的内容,这并不意味着他们一定想要使用该时区。例如,我可能在法国(并使用巴黎时区),但仍希望以英文呈现页面。你的网址会做什么?

(顺便说一句,通常会从标头或网址参数推断出区域设置,而不是作为网址路径的一部分 ...)

您还没有告诉我们有关该项目的任何信息,但我建议您尝试将不同的概念彼此分开。