Где находятся статические мультимедийные файлы Django Admin Site? и как настроить? - PullRequest
2 голосов
/ 22 ноября 2011

До сих пор я использовал стабильную версию django: 1.3, и мой файл settings.py выглядел так (для сайта администратора):

STATIC_URL = '/static/'
ADMIN_MEDIA_PREFIX = '/static/admin/'

Я только что перешел на разрабатываемую версию и после запуска сервера получил следующее предупреждение:

DeprecationWarning: The ADMIN_MEDIA_PREFIX setting has been removed; use STATIC_URL instead.
 "use STATIC_URL instead.", DeprecationWarning)

И, мой админский сайт теперь выглядит по-другому (без всех CSS, JavaScript и т. Д.).

Я попытался изменить статический URL-адрес на разные возможности и вообще избавился от префикса администратора, но первоначальный вид сайта администратора не был получен.

Может кто-нибудь подсказать, как это настроить?

1 Ответ

2 голосов
/ 27 декабря 2011

В следующей версии Django обработка статических файлов ведет себя как старое приложение django-staticfiles:

  • , чтобы гарантировать, что вы получили все статические файлы из всех приложений.поместите каждый статический файл приложения в подкаталог с именем 'static'
  • на dev, все автоматически обслуживается сервером dev
  • на prod, все статически подается из одного каталога с сервером HTTP prod,Чтобы заполнить этот каталог, используйте ./manage.py collectstatic

Так что вам не нужно ADMIN_MEDIA_PREFIX, потому что статические файлы администратора будут либо автоматически обслуживаться в течение dev, либо автоматически собираться collectstatic во время prod.

STATIC_URL должен соответствовать URL, который вы будете предоставлять статическому контенту, ВСЕМ, в prod.STATIC_ROOT должен быть абсолютным путем к каталогу, куда вы хотите скопировать статические файлы с помощью collectstatic.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...