Olá, estou usando Django (1.8.2) e django-compressor (2.2). O js compactado funciona bem, no entanto, o arquivo css não está compactado.
Aqui está parte do meu modelo:
{% load staticfiles %}
{% load compress %}
{% compress css %}
<link rel="stylesheet" href="{% static 'landing/style.css' %}" type="text/css"></head>
{% endcompress %}
{% compress js %}
<script src="{% static 'landing/js/jquery.min.js' %}"></script>
<script src="{% static 'landing/js/ads.js' %}"></script>
<script src="{% static 'landing/js/ads.js' %}"></script>
{% endcompress %}
Ele gera um arquivo css, mas é exatamente o mesmo com o arquivo original.
poste seu settings.py.
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'compressor',
)
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'compressor.finders.CompressorFinder',
)
COMPRESS_ENABLED = True
COMPRESS_OUTPUT_DIR = 'compress'
STATIC_ROOT = '/home/service/growth/static_file/static'
css não é compactado por padrão, veja a configuração padrão aqui: https://django-compressor.readthedocs.io/en/latest/settings/#django.conf.settings.COMPRESS_CSS_FILTERS. Eu admito que é estranho que isso seja feito para js por padrão e não para css. mas provavelmente não mudaremos isso a menos que façamos algum lançamento com outras mudanças importantes.
Desculpe, não estou familiarizado com CSS. Devo definir a variável COMPRESS_CSS_FILTERS
para que funcione para css? Qual opção devo usar?
Eu vejo. Esta linha funciona:
COMPRESS_CSS_FILTERS = ['compressor.filters.css_default.CssAbsoluteFilter', 'compressor.filters.cssmin.rCSSMinFilter']
Obrigada.
Vou deixar isso em aberto para que possamos discutir isso, caso façamos tal lançamento.
Nessas circunstâncias, removo o rcssmin de setup.py:install_requires e declaro o equívoco atual em algum lugar óbvio na documentação, como em 'Uso'.
@dilyanpalauzov, você é bem-vindo para criar um pull request para isso, não sei quando vou encontrar tempo para fazer isso sozinho.
editar: ... na verdade, eu prefiro pensar nisso como um bug e ter o rcssmin instalado por padrão torna mais fácil para o usuário contornar isso, então eu deixaria isso como um requisito. no entanto, a documentação obviamente se beneficiaria em tornar isso mais óbvio.
PARA SUA INFORMAÇÃO. Acabei de instalar o django-compressor e acabei aqui porque esperava que o CSS fosse reduzido como meu JS.
Eu vejo. Esta linha funciona:
COMPRESS_CSS_FILTERS = ['compressor.filters.css_default.CssAbsoluteFilter', 'compressor.filters.cssmin.rCSSMinFilter']
Obrigada.
Mas como posso obter o min.js ou min.css para os arquivos compactados?
Comentários muito úteis
Eu vejo. Esta linha funciona:
Obrigada.