фона:Как Django Apps связывает статические носители?
Я начинаю использовать Django в первый раз, что и мой первый набег на веб-разработки. Я просто застрял во всем «обслуживании статических медиа». Проведя некоторое время на всех документах и вопросах StackOverflow, я думаю, что понимаю, как он должен работать (т. Е. MEDIA_ROOT, MEDIA_URL, обновление файла urls и т. Д.).
Мой вопрос:
Итак, вот часть я не уверен. Приложения Django должны быть «подключаемыми», т. Е. Я могу перенести приложение из одного проекта в другой. Итак, как эти приложения собирают статические носители?
Например, допустим, что у меня есть приложение «foo», в котором есть шаблоны, которые загружают некоторые файлы css/image. Где я должен помещать эти файлы, чтобы они автоматически включались после включения приложения?
Единственное решение, которое я вижу, заключается в том, что установка приложения должна включать дополнительный шаг копирования своего статического носителя в какое-то место на вашем собственном сервере, который обслуживает этот носитель.
Это приемлемый способ сделать это? Он включает в себя дополнительный шаг, но, возможно, это стандарт при работе с веб-разработчиком (я новичок, поэтому я действительно не знаю).
Кроме того, если это так, существует ли стандартный способ сбора всех моих статических носителей, чтобы было легко узнать, что мне нужно для обслуживания? (I.e., стандартно ли иметь папку с именем «media» или что-то внутри приложения?).
Спасибо,
Теперь это правильный подход, как и Django 1.3. –
Обратите внимание, что https://github.com/jaddison/django-cachebuster/ предоставляет очень полезный тег {% static%} для Django 1.3 – Eli