Ruby on rails RubyonRails/SQLServer日期时间
我在约会时间上有点问题。我的本地时区是UTC+0800 在SQL Server中,当我打开SQL Server Management Studio Express时,日期时间显示为Ruby on rails RubyonRails/SQLServer日期时间,ruby-on-rails,sql-server,date,datetime,Ruby On Rails,Sql Server,Date,Datetime,我在约会时间上有点问题。我的本地时区是UTC+0800 在SQL Server中,当我打开SQL Server Management Studio Express时,日期时间显示为13/8/2015 9:05:00 AM 在Rails处于默认时区的情况下,我将时间以角度表示为“2015-08-13T09:05:00.000Z” 当我执行$filter('date')(日期,“HH:mmz”)时,我得到17:05+0800 当我执行$filter('date')(日期,“HH:mmz”,“+080
13/8/2015 9:05:00 AM
在Rails处于默认时区的情况下,我将时间以角度表示为“2015-08-13T09:05:00.000Z”
当我执行$filter('date')(日期,“HH:mmz”)
时,我得到17:05+0800
当我执行$filter('date')(日期,“HH:mmz”,“+0800”)
时,我仍然得到17:05+0800
我试图将rails时区更改为UTC+0800
,我得到的时间为2015-08-13T17:05:00.000+08:00
当我执行$filter('date')(日期,“HH:mmz”)
时,我得到17:05+0800
当我执行$filter('date')(日期,“HH:mmz”,“+0800”)
时,我仍然得到17:05+0800
我很困惑。如何获取$filter结果以显示时间9:05
编辑:我观看了rails播放的视频,并在播放前尝试了d.AssignedDateTime,它给了我2015-08-13 09:05:00 UTC
。所以问题是Rails认为存储在SQLServer数据库中的日期时间是UTC。这个日期时间是从微软的ERP系统中给我的,有没有办法让rails不认为这是UTC时间?更改application.rb中的配置时区不起作用。您看过吗?它可能会帮助您使用正确的时区配置Rails
一旦您从数据库中获得正确的时间并在JSON响应中呈现出来,我希望角度问题应该得到解决。除了
application.rb
中的config.time\u zone
之外,还可以更改config.active\u record.default\u timezone
。谢谢,我会看一看,那么,是从数据库出来的时间和在我的JSON响应中呈现的时间错了吗?从你的问题很难判断,但我会先确保Rails呈现了你期望的日期时间格式,然后再使用Angular的日期过滤器对其进行格式化。有人在stackoverflow中否决了这一点(an by this也修改了a-1),当答案有用时,你可以投票表决。如果它们没有用处,你就忽略它们。只有当他们有严重问题时,你才投票否决他们。在这种情况下,请给出一个评论。我看了视频,在播放之前尝试了d.AssignedDateTime,它给了我2015-08-13 09:05:00 UTC,有没有办法让rails不认为数据库中存储的时间是UTC?谢谢@Meier。我想知道这到底是为什么被否决的。所以这根本不是angualrjs的问题?在他的情况下,请编辑您的问题标题和标签。