2010-02-25 65 views
14

當您在Django的管理員中創建或修改對象實例時,會創建更改日誌條目。這非常好,原因很明顯。跟蹤對Django模型實例的更改

但是,我的模型的實例由管理界面之外的普通用戶創建。沒有記錄更改日誌記錄其創建(不是一個大問題),但我想跟蹤用戶所做的編輯。

我也想在前臺顯示用戶這個完整的日誌(用戶+管理員編輯),所以我需要一種方式來將更新日誌拉出。

我的問題:怎麼樣?是否有一個我可以彈出的單行開關來啓用完整的日誌記錄功能,還是必須深入挖掘並對用戶的編輯表單邏輯進行操作?

+2

您可以自己使用django admin LogEntry模型:http://stackoverflow.com/questions/1398051/getting-the-history-of-an-object – 2010-02-25 17:27:03

+1

或者使用Marty Alchin的審計線索:http://stackoverflow.com/questions/818823/django-audittrail-vs-reversion – 2010-02-25 17:27:28

回答

9

django-reversion是一個應用程序,旨在幫助那。

+0

我沒有真正使用過這個解決方案,但是你真的可以從django-reversion獲得更新日誌嗎?無論如何,因爲我認爲它仍然可能符合奧利的需求。 – 2010-02-25 17:31:04

+0

這是迄今爲止最簡單的方法。它具有令人驚歎的非常pythonic方法綁定到跟蹤完全符合我的風格的變化。我相信我會找到一種方法來提取更改列表! – Oli 2010-02-26 11:33:16

+0

看看admin.py history_view – 2010-02-26 12:48:41