2012-08-13 69 views
0

我得到了這個錯誤,讓我發瘋。Rails 2.3.11顯示服務器上的日期時間錯誤

我希望的輸出是顯示從星期日開始的一週,之後根據它計算10周前。

實施例:

[太陽,12 2012八月,太陽,2012年8月5日,週日,2012年7月29日,週日,7月22日 2012,太陽,2012年7月15日,週日,2012年7月8日,孫,2012年7月1日,太陽,24 2012年6月,孫,2012年6月17日,星期日,2012 6月10日,星期日,2012年6月3日]

但是,無論在我的機器上是正確的,並返回上述數組,在服務器上是錯誤的:(

服務器的輸出是:

[星期六,2012年8月11日,星期六,2012年8月4日,星期六,2012年7月28日,星期六,21七月 2012,星期六,2012年7月14日,星期六,2012年7月7日,星期六,2012 06月30日星期六,23 2012年6月,週六,2012 6月16日,星期六,2012年6月9日,星期六,2012年6月2日]

如果我訪問應用程序和腳本中調用控制器/控制檯顯示錯誤的,但如果我重新計算在腳本/控制檯顯示正確。

我的環境:

OS X 10.7.4,紅寶石1.8.7(2012-04-14 PATCHLEVEL 361) [i686的-darwin11.3.0],RVM 1.10.2,波段13阿戈2012 9時27分46秒BRT(系統 日期)

和服務器環境:

Ubuntu的12.04,紅寶石1.8.7(2012-02-08 MBARI 8/0x8770上PATCHLEVEL 358) [ I6 86-linux的],MBARI 0x8770,Ruby企業版2012.02,RVM 1.14.0(穩定),週一8月13日13時29分十三秒WEST 2012

回答

1

也許您的服務器上的時區不匹配,可以嘗試設置你的時區明確的config/appliction.rb:

config.time_zone = "Pacific Time (US & Canada)" 

一種流行的解決這個問題設置您的控制器上的before_filter用於配置每個用戶正確的時區。請參閱:http://railscasts.com/episodes/106-time-zones-in-rails-2-1作爲起點。

+0

jdeseno,感謝您的答覆,但我發現這個問題,可以從我的服務器相關Time.now.zone返回WEST(和我的機器返回BRT)和我回日期陣列的方法計算出頭與TO_DATE之間的轉換to_datetime。在我改變爲唯一的轉換後,問題消失了。但是,我會投票這個答案,因爲也是相關的。 – 2012-08-13 22:21:37

相關問題