django-simple-history,在admin中显示已更改的字段

时间:2017-10-23 15:15:29

标签: python django django-simple-history

当我从admin.ModelAdmin继承时,在管理页面的历史记录中,我可以看到哪些字段已被更改。但是,现在我需要使用django-simple-history来跟踪我的所有模型更改。现在,对于admin,我继承了simple_history.SimpleHistoryAdmin。虽然我可以看到所有的模型更改并将其还原,但我看不出哪些字段已更改。是否可以将这个方便的功能添加到SimpleHistoryAdmin?

2 个答案:

答案 0 :(得分:1)

您需要的是管理员中的history_list_display字段。 history_list_display中包含的字段列表将与相应的条目一起显示在历史记录页面中。

类似这样的东西:

class SomeAdmin(admin.ModelAdmin):

    def some_user_defined(self, obj):
        return "something"

    date_hierarchy = 'created_at'
    search_fields = ['field1', 'field2']
    list_display = ('field1', 'field2',)
    list_filter = ('field1',)
    history_list_display = ('field1', 'field2', 'some_user_defined',)

这将显示field1field2以及commentuserreason

答案 1 :(得分:1)

我找到了解决此问题的方法。我添加了ModelAdmin方法,并使用“历史记录差异”在“更改历史记录”表中添加了自定义字段。

stdout