У меня ещё один вопрос, в вашем примере ссылка на каталог статики подставляется так: {{ STATIC_URL }} , но в документации есть ещё один способ через спец. шаблонные теги: {% load static %} и {% get_static_prefix %}. Интуитивно меня тянет ко второму способу :) , скажите почему вы используете именно 1-ый и считаете его более правильным ?
Тут я вам пока не подскажу! Я не увидел того чем второй вариант лучше и полезнее и чем он выигрывает у первого, следовательно пока руководствовался тем, что с клавиатуры набирать меньше:)
Можешь просто залезть в исходники и поглядеть как работает тег static. Если уж не поможет, то создай отдельную тему и спроси у местных гуру.
Кстати ещё один момент, когда я в вашем проекте в переменную STORAGE прописываю полный путь до проекта то в админке отваливается всё оформление. Если в STORAGE находится любая белиберда то всё работает.
Может я не тот путь прописываю ?
Можно конечно обойтись и без STORAGE. Нужно просто понять, что такое STORAGE.
Пример:
У вас есть проект(testproject).
Теперь для вашего проекта вам необходимо задать место, где будут храниться:
статика(css, img, javascript, ..) - STATIC_ROOT
данные загружаемые пользователем - MEDIA_ROOT
Мы конечно можем задать абсолютно произвольные каталоги, например:
STATIC_ROOT - D:/project/static/
MEDIA_ROOT - D:/files/media/
Но это очень не удобно, следовательно лучше хранить данные по одному проекту в одном месте, правим:
STATIC_ROOT - D:/project/static/
MEDIA_ROOT - D:/project/media/
Но и здесь есть недостаток, если мы захотим поменять путь, нам придется менять(D:/project/) в двух местах, а это не есть хорошо, следовательно правим:
STORAGE = D:/project/
MEDIA_ROOT = os.path.join(STORAGE, ‘media’)
STATIC_ROOT = os.path.join(STORAGE, ‘static’)
Смотрим теперь, если нам необходимо поменять путь до хранилища данных по нашему проекту, нам потребуется отредактировать файл конфигурации всего в одном месте STORAGE.
Также следует отметить, что не следует явно задавать пути, например такие как TEMPLATE_DIRS, так как если мы перенесем проект в другое место, то придется редактировать файл конфигурации и заново прописать путь до каталога с шаблонами.
Вывод: STORAGE - это все лишь хранилище данных нашего проекта.
Теперь когда вы прописали в STORAGE полный путь до вашего проекта, понимаете какую глупость вы делаете? Отваливается интерфейс администратора, потому что STATIC_ROOT должен быть отличным от STATICFILES_DIRS, когда вы задали полный путь до проекта, то у вас STATIC_ROOT и STATICFILES_DIRS совпадают, думаю это отчетливо должно быть видно.
Надеюсь объяснил понятно, если есть вопросы спрашивайте, что не понятно.