好吧,这必须是有史以来最奇怪的铁路相关问题。大约一个月前,我的一些员工开始注意到,每次在日期字段中输入一个值并保存,然后再回到它,它总是落后他们保存的2天。这是一个非常一致的问题。如果它只是那个网络应用程序我会没事的。但它已经开始在我们所有的rails应用程序中发生。我检查了服务器时间。他们都是正确的。正确的日期,年份,时间,时区等等。更奇怪的是我们已经输入了一些数据,日期字段显示为“2013-04-15”但是当提到轨道中的确切条目时它会说'2013-04 -13'正好休息2天。 (即使没有用strftime格式化时间)这开始让我发疯。我唯一的工作是获取值并添加2.days,但这不会在几个Web应用程序中削减它。有没有人有任何可能对此有所了解的想法。
***作为旁注,在开发模式下不会发生这种情况。
*********终于在经过数月的挣扎之后找到了答案。这就是我连接数据库的方式。当我们切换到MSSQL 2012时,我开始使用非标准gem连接到SQL 2012,因为标准不能使用我们的sql配置,所以我使用了gem。 - > gem“jdbc-mssql-azure”,“〜> 0.0.1”。显然,该gem中的某个地方存在一个错误,导致日期向后渲染2天,而不管SQL值如何。谢谢你们所有的评论和帮助。此外,它可以帮助美国人使用“amarican-date”宝石
答案 0 :(得分:0)
当我们没有更多信息时,发布答案有点困难。
如果服务器和数据库时间正确并且在开发模式下没有出现,我会说问题出现在environment / production.rb文件中。
这两个设置特别可能导致计时问题。
config.time_zone #sets the default time zone
#for the application and enables
#time zone awareness for Active Record.
config.active_record.default_timezone #default is :utc