在模板中显示Django Admin操作
我现在正在为我的项目搭建一个仪表盘,我希望管理员或者超级用户能够看到到目前为止所有的操作记录,类似于一个活动日志。
比如说:
用户A创建了一个新的项目对象。
有没有办法把Django管理后台的操作记录提取出来,并放到我的模板(dashboard.html)上呢?
如果有人能给我指个方向,那就太好了。
谢谢,
史蒂夫
1 个回答
3
网址:
(r'^dashboard$', 'dashboard_view'),
视图:
from django.contrib.admin.models import LogEntry
def dashboard_view(request):
log = LogEntry.objects.select_related().all().order_by("id")
return render_to_response("app_name/dashboard.html", {'log': log},)
模板:
{% for l in log %}
<p>
{{ l.id }} {{ l.user.username }} {{ l.change_message }}
</p>
{% endfor %}
有一个扩展叫做 django-reversion,它可以帮助我们记录对模型所做的所有更改,不仅仅是管理界面中的操作。它还可以让我们把模型恢复到任何一个时间点。