Очень хорошим решением здесь является использование django-compress .Во-первых, если вы обслуживаете более одного файла CSS, компрессор поможет сократить время загрузки страницы, уменьшив количество запросов.
Побочным эффектом сжатия / объединения файлов является то, что компрессор переписывает URL-адреса в файле css, поэтому относительные ссылки на статические файлы (например, ../img/logo.png) автоматически становятся полностью определенными URL-адресами со статическим файломurl (например, http://static.example.com/img/logo.png).
В качестве альтернативы вы можете написать пользовательские фильтры для достижения желаемого или сжать полностью статический CSS и некоторые динамические части в один файл (например, для этогов вашем базовом файле макета):
{% compress css %}
<link .... />
<style>
.some_rule {background-image:{{MEDIA_URL}}/img/logo.png}
</style>
{% endcompress %}
Это также означает, что вам не нужно беспокоиться об эффективности, поскольку файлы css / js генерируются при первом доступе к шаблону, который их использует, и онихранятся как обычные файлы в вашем статическом каталоге (это настраивается), поэтому они обслуживаются как обычные статические файлы.