Хорошо, я нашел решение. Вот рекомендации:
Mezzanine позволяет пользователям настраивать свою информационную панель, предоставляя функцию и регистрируя ее как тег включения.
Документация: http://mezzanine.jupo.org/docs/admin-customization.html -> Панель инструментов https://docs.djangoproject.com/en/1.7/howto/custom-template-tags/#inclusion-tags
Чтобы реализовать такую функцию, вам необходимо выполнить следующие шаги:
1) Добавьте в свое приложение папку templatetags (не забудьте файл __init__.py) и создайте внутри этого пакета файл с именем your_tags.py.
2) В этом новом файле добавьте функцию для предоставления данных на новую информационную панель, которую вы хотите добавить на панель информационной панели. Это может выглядеть так:
from mezzanine import template
from your_app.models import Thing
register = template.Library()
@register.inclusion_tag('unpublished_things.html')
def show_unpublished_things():
plugins = Thing.objects.filter(published=False)
return {'things':things}
3) Затем вам нужно создать файл «unpublished_things.html», используемый в теге включения, например, создайте такой файл в папке шаблонов вашего приложения. Файл может выглядеть следующим образом (при условии, что в модели вещи есть функция «get_admin_url»):
{% load i18n %}
<div class="group-collapsible">
<div class="module">
<table>
<caption>Unpublished things</caption>
{% for thing in things %}
<tr>
<th scope="row" width="100%"><a
href="{{ thing.get_admin_url }}">{{ thing.name }}</a></th>
<td> </td>
<td> </td>
</tr>
{% endfor %}
</table>
</div>
</div>
4) Чтобы закончить, вам просто нужно добавить следующее в ваш local_settings.py (или settings.py):
DASHBOARD_TAGS = (
("your_tags.show_unpublished_things", "mezzanine_tags.app_list"),
("comment_tags.recent_comments",),
("mezzanine_tags.recent_actions",),
)
Эта конфигурация автоматически добавит сгенерированный материал, предоставленный функцией «show_unpublished_things», вверху первой строки на панели инструментов вашей панели администратора.
Не забудьте перезапустить сервер, если у вас возникнет ошибка!
person
Jerome
schedule
11.07.2014