Как и любой другой пользователь пользователя django, я обслуживаю статические файлы. Я решил использовать django-staticfiles, чтобы быть готовым к django 1.3, который будет в основном интегрировать его into the core.Django: css ссылается на носители в статических файлах (django dev/1.3/статические файлы)
Мой вопрос довольно прост: это отлично подходит для объединения нескольких источников мультимедиа и равномерного обращения к ним в шаблонах django. Тем не менее, я часто использую изображения фона в Css так:
#itemname { background-image: url('/path/to/image.png'); }
Мой вопрос прост - если использовать абсолютные имена, я жестко закодировать их. Если я использую относительные имена, переходя к «подкаталогу», URL-адреса помещают местоположение ресурсов для этих элементов, и они не могут быть загружены.
Итак, как я могу расширить это решение до CSS? Указанный раствор следует избегать:
- Вложение CSS в HTML. Я лично избегаю этого.
- Использование жестко заданных URL-адресов. Это не очень хорошо, потому что на моей локальной установке я обычно использую «localhost/project» с apache для тестирования (mod_wsgi), тогда как я использую
project.com
для развертывания.
Идеи?
Немного я не уверен, теперь вы ответили - это css 'background-image' urls относительно файла css или URL-адрес, с которого выполняется страница?Если первый, я отсортирован, потому что я могу использовать именно то, что вы наметили. –
Просто протестирован - родственник, похоже, работает в css. Я доволен этим. Имейте тик! –
@John, PROJECT_ROOT также определен где-то вами, или он автоматически определяется Django как ваш текущий корень проекта (где ваш manage.py лежит). Если вы сами определяете PROJECT_ROOT, вам нужно продолжать изменять его в зависимости от того, находится ли он в среде разработки или рабочей среде (как структура каталогов) обоих может быть разным – David