我正在尋找在Django中獲得我的模型歷史記錄(interger &浮點字段)的最佳方法。 我讀Keeping a history of data changes in database,看起來觸發器是最好的選擇。在Django中保留歷史記錄以繪製圖形
我的想法是在可能的情況下保持數據庫不可知。
你如何在你的django代碼中解決這個問題?
TIA。
我正在尋找在Django中獲得我的模型歷史記錄(interger &浮點字段)的最佳方法。 我讀Keeping a history of data changes in database,看起來觸發器是最好的選擇。在Django中保留歷史記錄以繪製圖形
我的想法是在可能的情況下保持數據庫不可知。
你如何在你的django代碼中解決這個問題?
TIA。
你應該檢查出Django Reversion的應用程序。這可能是在你的項目中實現你想要的最簡單的方法,特別是如果你還想恢復早期版本的模型。如果沒有,這可能有點矯枉過正。您也應該檢查Django History。可能更符合你真正需要的東西。然而,它很久沒有更新,您可能不得不將它用作您的定製解決方案的靈感。
如果你不打算去與觸發器,Signals做類似的工作 - 它會(可能)會比使用觸發器效率較低,但你可以附加一個post_save
信號到你的模型,你要跟蹤和做所有你需要的處理。
我一直在編寫一個簡單的Django歷史。 但是我仍然有興趣看看爲了圖表的目的,將數據保存在數據庫中的最佳實踐。 – Thomas 2010-06-17 16:31:28
這很難說,取決於你有什麼樣的模型以及你想從他們產生什麼類型的圖。但是,一個常見的/基本的做法是優化處理'選擇'大量數據的功能。*非規範化*某些型號。 – 2010-06-18 07:07:41