Django-compressor: Arquivos JS são minimizados por padrão, mas arquivos CSS não são

Criado em 8 nov. 2017  ·  10Comentários  ·  Fonte: django-compressor/django-compressor

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.

feature

Comentários muito úteis

Eu vejo. Esta linha funciona:

COMPRESS_CSS_FILTERS = ['compressor.filters.css_default.CssAbsoluteFilter', 'compressor.filters.cssmin.rCSSMinFilter']

Obrigada.

Todos 10 comentários

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?

Esta página foi útil?
0 / 5 - 0 avaliações