Django Admin Templating - PullRequest
       22

Django Admin Templating

0 голосов
/ 07 июля 2010

Я изучаю джанго и строю свой собственный проект.Я хочу изменить раздел администратора на свой собственный интерфейс, я добавил подкаталог к ​​именам шаблонов "admin". И начал изменять base.html.

Проблемы

Я хочу добавить свой собственный файл CSS, как я могу это сделать? Мой файл CSS находится в моем каталоге MEDIA_ROOT. Как я могу это сделать? Я видел много тегов шаблонов, где я могуможно посмотреть, какие теги шаблонов мне доступны в разделе администратора? Есть чистый шаблон администратора, например Starkers для Wordpress

Йоси

Ответы [ 2 ]

1 голос
/ 28 марта 2013

Для гугл-трюков там:

  1. Это гораздо лучший способ переопределения вещей в шаблоне администратора. Вероятно, самый СУХОЙ метод, с которым я сталкивался за годы Django-ing .

    Вы должны заметить, что статические файлы (такие как ваш css) не должны храниться в папке media. Вы должны положить их в статическую папку. Вы не хотите хранить загруженный пользователем контент в том же каталоге, что и ваши статические файлы.
  2. Цитируется из ответа @cji: «Вы можете использовать все теги везде, если вы {% load%} их редактировали ранее. Существуют специальные теги администратора, которые можно найти в источнике Django здесь - к сожалению, я не знаю о них никаких документов, поэтому кажется, что вы должны прочитать источник.
  3. Я не сталкивался ни с кем в своих путешествиях. Но, к сожалению, на моем сайте изображения для меня испорчены, поэтому я не уверен ...
1 голос
/ 08 июля 2010

1) Если "django.core.context_processors.media" включен в TEMPLATE_CONTEXT_PROCESSORS (который по умолчанию) в вашем файле settings.py, вы можете добавить <link> к {{ MEDIA_URL }}/your_stylesheet.css в templates/admin/base.html, вот так (яЯ использую шаблоны администрирования Django 1.2):

...
<link rel="stylesheet" type="text/css" href="{% block stylesheet %}{% load adminmedia %}{% admin_media_prefix %}css/base.css{% endblock %}" />
<link rel="stylesheet" type="text/css" href="{{ MEDIA_URL }}/your_stylesheet.css" />
...

2) Вы можете использовать все теги везде, если вы {%load%} редактировали их ранее.Существуют специфические для администратора теги, которые можно найти в исходном коде Django здесь - к сожалению, я не знаю о них никаких документов, поэтому, похоже, вам необходимо прочитать исходный код.

3) Я не слышал о такой вещи для администратора Django, однако есть проект с именем Grappelli , который улучшает внешний вид и функциональность администратора Django, предоставляя несколько более дружественные шаблоны в качестве побочного эффекта.

...