我在MySQL數據庫中以DATETIME格式存儲日期。從數據庫中提取模型時,日期(以DATETIME格式)將被轉換爲模型的初始化方法中的日期對象。到現在爲止還挺好。如何處理Backbone中的日期?
將模型保存到服務器時,需要將日期對象轉換回DATETIME格式,以便服務器端代碼正確解釋日期。我已經使用各種hackery來做到這一點,但我不知道在什麼階段可以的模型的保存方法可以安全地將日期轉換爲DATETIME格式?
一種方法是做到以下幾點:
this.model.save({
date : date.toDateTime()
}, options);
然而,這會導致更改事件以來的屬性哈希保存方法之前被解僱是不一樣的保存事件後的散列(這觸發了Backbone的設置方法)。
無論是UNIX時間,或[ISO標準的日期表示] (http://en.wikipedia.org/wiki/ISO_8601)。我通常使用後者。但我同意標準的非客體表示會有助於這種情況。 – 2012-02-03 15:15:16
這是我考慮過的一個選項,但是它會在每次需要時創建一個日期對象,從而產生相當多的開銷。一致的日期表示方法確實會讓事情變得更容易。 – 2012-02-03 15:24:28
你說服了我,托馬斯(和羅布)。這將需要一些工作,但我認爲擁有獨立於環境/語言的日期格式的好處。非常感謝您的時間Tomasz和Rob。非常感激。 – 2012-02-03 19:19:20