當您在Django的管理員中創建或修改對象實例時,會創建更改日誌條目。這非常好,原因很明顯。跟蹤對Django模型實例的更改
但是,我的模型的實例由管理界面之外的普通用戶創建。沒有記錄更改日誌記錄其創建(不是一個大問題),但我想跟蹤用戶所做的編輯。
我也想在前臺顯示用戶這個完整的日誌(用戶+管理員編輯),所以我需要一種方式來將更新日誌拉出。
我的問題:怎麼樣?是否有一個我可以彈出的單行開關來啓用完整的日誌記錄功能,還是必須深入挖掘並對用戶的編輯表單邏輯進行操作?
當您在Django的管理員中創建或修改對象實例時,會創建更改日誌條目。這非常好,原因很明顯。跟蹤對Django模型實例的更改
但是,我的模型的實例由管理界面之外的普通用戶創建。沒有記錄更改日誌記錄其創建(不是一個大問題),但我想跟蹤用戶所做的編輯。
我也想在前臺顯示用戶這個完整的日誌(用戶+管理員編輯),所以我需要一種方式來將更新日誌拉出。
我的問題:怎麼樣?是否有一個我可以彈出的單行開關來啓用完整的日誌記錄功能,還是必須深入挖掘並對用戶的編輯表單邏輯進行操作?
django-reversion是一個應用程序,旨在幫助那。
我沒有真正使用過這個解決方案,但是你真的可以從django-reversion獲得更新日誌嗎?無論如何,因爲我認爲它仍然可能符合奧利的需求。 – 2010-02-25 17:31:04
這是迄今爲止最簡單的方法。它具有令人驚歎的非常pythonic方法綁定到跟蹤完全符合我的風格的變化。我相信我會找到一種方法來提取更改列表! – Oli 2010-02-26 11:33:16
看看admin.py history_view – 2010-02-26 12:48:41
您可以自己使用django admin LogEntry模型:http://stackoverflow.com/questions/1398051/getting-the-history-of-an-object – 2010-02-25 17:27:03
或者使用Marty Alchin的審計線索:http://stackoverflow.com/questions/818823/django-audittrail-vs-reversion – 2010-02-25 17:27:28