1

我在使用集成sass时遇到问题Djangodjango_compressor

以下是导致的错误:

UncompressableFileError at /
'sass/example.scss' isn't accessible via COMPRESS_URL ('static') and can't be compressed

从模板中,这会导致上面的错误 -

{% load compressor %}

{% compress css inline %}
  <link rel="stylesheet" type="text/x-sass" href="sass/example.scss"/>
{% endcompress %}

有趣的是,如果我使用内联 sass 样式,压缩会起作用,这让我想知道这个问题是否与我如何链接资源有关。

内联作品-

{% load compressor %}

{% compress css inline %}
  <style type="text/x-sass">
    $font-stack:    Helvetica, sans-serif;
    $primary-color: #333;

    body {
      font: 100% $font-stack;
      color: $primary-color;
      background: red;
    }
  </style>
{% endcompress %}

这里似乎有什么问题?

这些是我的设置 -

COMPRESS_ROOT = STATIC_ROOT
COMPRESS_URL = STATIC_URL
COMPRESS_ENABLED = True

COMPRESS_PRECOMPILERS = (
    ('text/coffeescript', 'coffee --compile --stdio'),
    ('text/x-sass', 'sass {infile} {outfile}'),
    ('text/x-scss', 'sass --scss {infile} {outfile}'),
)

我认为问题是我不确定如何设置值href?我想使用{{ static <foo> }},但它返回相同的错误。我知道要包含您需要使用的变量COMPRESS_OFFLINE_CONTEXT,但不知道该怎么做。

4

1 回答 1

0

这可能是由于您的sass文件中存在语法错误。当这是一个单独的文件时,您确定所有的 mixin 都可以访问吗?您还可以将您尝试压缩的文件中的大部分代码注释掉,以查看一个简单的最小文件是否正确压缩。

于 2014-11-04T18:57:29.253 回答