1
在生產中,方法Time.zone.now
始終返回相同的值,而Time.now
返回 正確的系統時間。Time.zone.now鎖定生產
這裏一個例子:
banner.rb
scope :active, where("'#{Time.zone.now}' between start_date and end_date")
日誌此範圍的:
SELECT `banners`.* FROM `banners` WHERE ('2013-03-06 08:06:46 -0300' between start_date and end_date) AND ((`banners`.`store_id` = 1 AND `banners`.`spot_id` = 3 AND `banners`.`at_home` = 1))
Time.zone.now
總是2013年3月6日08:06 :46 -0300
任何人都知道爲什麼?