2017-08-12 73 views
0

Django static precompiler似乎沒有爲我工作scss文件。我已經選中,如果我已經安裝了編譯器和我的Django的設置是如下Django靜態預編譯器不編譯文件?

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'static_precompiler', 
    'cms', 
] 

STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder', 
    'django.contrib.staticfiles.finders.AppDirectoriesFinder', 
    'static_precompiler.finders.StaticPrecompilerFinder', 
) 

STATIC_URL = '/static/' 
STATIC_ROOT = "static" 

和我打電話從Django的模板相同如下

{% load compile_static %} 
{% load static %} 
<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Spacemailer</title> 
    {% block seo %} 
    {% endblock %} 
    <link rel="stylesheet" href="{% static 'style/main.scss' | compile %}" type="text/css" media="all" /> 
</head> 
    <body> 
     {% block body %} 
     {% endblock %} 
    </body> 
</html> 

有沒有任何錯誤。輸出結果與scss文件相同,沒有進行編輯。有人能指出我在做什麼錯了嗎?或者一些其他辦法,支持編譯scss以及coffee腳本

+0

你有DEBUG設置爲true ?有些預編譯器在這種情況下不起作用,不知道這個tbh。 – marcinowski

+0

我試着用'DEBUG'中的兩個選項 – georoot

回答

0

默認情況下,彙編應在運行時 compile過濾服務模板來完成。

{% static "js/alert.es6"|compile %} 

如果您使用不同的存儲渲染

<script type="application/javascript" src="/static/COMPILED/js/alert.js"></script> 

STATIC_PRECOMPILER_DISABLE_AUTO_COMPILE是以前collectstatic

True編譯使用compilestatic驗證Compiler configuration

STATIC_PRECOMPILER_COMPILERS = (
     ('static_precompiler.compilers.SCSS', { 
     "executable": "/usr/bin/sass", 
     "sourcemap_enabled": True, 
     "compass_enabled": True, 
     "load_paths": ["/path"], 
     "precision": 8, 
     "output_style": "compressed", 
    }), 
)