2015-04-02 50 views
1

我最近從Magento 1.5升級到1.9,我注意到一些奇怪的行爲,日期/時間。我不能說我在升級之前就已經注意到了這一點,所以我會試着回到1.5測試,以確認它沒有發生。到目前爲止,我已經在我們的現場製作網站,我們的本地網站的開發副本以及完全沒有定製的乾淨的Magento CE 1.9.1.0上進行了測試,並且每次都獲得相同的結果。我看到的問題是,在某些情況下,「創建於」時間的客戶發生錯誤,因此月份和日期值會互換。可靠地再現的步驟是:Magento Locale/Timezone Issue

  1. 放在前端的順序,使用選項來保存您的帳戶,供以後使用
  2. 進入到管理和查看客戶的賬戶。記下「創建時間」。今天,例如,它會說2015年4月2日。
  3. 從管理員,爲同一個客戶創建一個新的訂單。
  4. 下訂單後,回到客戶的賬戶並查看「創建時間」。請注意,它已更改爲「2015年2月4日」。
  5. 重複步驟3-4,並注意它改變了「創建時間」回到「2015年4月2日」

正如我所說的,出現這種情況,我在這兩個網站的代碼2個不同的服務器和一個乾淨的1.9.1.0安裝,這使我相信它是代碼中的錯誤,而不是配置問題,但我不是100%確定的。時區,地區等可能會有點混亂,所以我可能在安裝過​​程中出現問題。如果您有任何想法或可以/不能再現這一點,請分享您的發現/想法。

謝謝!

回答

-1

那麼,或許你有以下問題:

Mage_Sales_Model_Order的子類,並提供具體getCreatedAt方法(而不是方法是魔法)存儲在created_at列的

你的數據有問題的訂單實際上有一個Unix時間戳或一些其他數據?這可能暗示非法模式更改。 要測試模型是否屬於子類型,請輸出get_class($order) - 如果模型已被重寫以診斷,請刪除重寫。

+0

你完全錯過了這一點。我不想在某些自定義代碼中使用日期/時間函數,我正在談論核心功能。您向管理員下訂單並且客戶的「創建時間」會變得混亂。這是我試圖追蹤的問題。 – BrianVPS 2015-04-02 18:24:06

+0

我明白了。我的錯。好。你是否對這兩個網站偶然使用自定義主題?如果在兩臺服務器上都運行相同的「錯誤」,那麼可能會出現這樣的假設:可能是您的主題代碼中存在錯誤。如果是這種情況,我會聯繫主題開發人員,因爲其他人也有機會注意到它,並且可能有適當的解決方案。如果不。好吧,我想我沒有得到有益的幫助。 – Dsx 2015-04-02 18:30:56

+0

正如我在我的OP所說,這是發生在股票Magento 1.9.1安裝,沒有定製。它只有樣本數據和麥迪遜島商店/主題。如果我們的主題中有些內容被打破,那麼我會很驚訝。它似乎不是主題相關的,它不是由於任何第三方擴展,並且它發生在兩個完全不同的服務器上,其中一個我甚至沒有配置,所以我不能兩次犯同樣的錯誤。它真的聞起來像一個核心錯誤。無論如何,你是否真的去嘗試我提供的步驟來看看它是否適合你? – BrianVPS 2015-04-02 19:15:43

0

您是否正確設置了區域設置選項?

System > Configuration > GENERAL > General > Locale Options (3rd Option) 
+0

是的,這一切都設置正確 – BrianVPS 2015-04-03 03:11:45

+0

我重新讀你的帖子,2015年4月2日,將在美國日期格式寫成4/2/2015年...歐洲格式2015年2月4日。所以這是你的出發點! – Hiboomedia 2015-04-03 20:43:41