2011-10-19 127 views
2

我想將管理視圖的功能添加到django simple-history。我在模型上創建了一個歷史屬性,現在這個模型會自動顯示在管理員文檔部分,而不需要我提供任何代碼,但它不會出現在管理部分。我希望用戶能夠查看更改的歷史記錄並使用most_recent函數應用撤消功能。 你有什麼建議如何解決這個問題?django在管理中的簡單歷史

+0

這一直通過向管理員添加自定義視圖來解決。 – user773328

+0

請將您的解決方案作爲答案發布,並在其工作時接受它。 –

回答

5

如果您的型號有:

from simple_history.models import HistoricalRecords 
from django.db import models 

class Poll(models.Model): 
    question = models.CharField(max_length = 200) 
    pub_date = models.DateTimeField('date published') 
    history = HistoricalRecords() 

class Choice(models.Model): 
    poll = models.ForeignKey(Poll) 
    choice = models.CharField(max_length=200) 
    votes = models.IntegerField() 
    history = HistoricalRecords() 

那麼你可以有一個看起來像一個管理員:

from django.contrib import admin 
from simple_history.admin import SimpleHistoryAdmin 
from .models import Poll, Choice 

admin.site.register(Poll, SimpleHistoryAdmin) 
admin.site.register(Choice, SimpleHistoryAdmin) 

,或者你可以自定義...

from django.contrib import admin 
from simple_history.admin import SimpleHistoryAdmin 
from .models import Poll 

class PollAdmin(SimpleHistoryAdmin): 
    list_display = ('question', 'pub_date') 

admin.site.register(Poll, PollAdmin)