Отображение действий администратора Django в шаблоне - PullRequest
3 голосов
/ 21 апреля 2011

В настоящее время я создаю панель управления для своего проекта, и я хотел бы, чтобы администратор или суперпользователь могли видеть все действия, которые были отключены до настоящего времени, что-то вроде журнала активности.

Например:

Пользователь A создал новый объект проекта

Есть ли способ вытащить действия администратора django и поместить их в шаблон (мой dashboard.html)?

Если бы кто-нибудь мог хотя бы указать мне правильное направление, это было бы очень полезно.

Спасибо,

Стив

1 Ответ

3 голосов
/ 21 апреля 2011

URL-адрес:

(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 , которое позволяет отслеживать все изменения, внесенные в модели, а не только действия в интерфейсе администратора. Это также позволяет выполнить откат модели в любой момент времени.

...