Django静态预编译器无法在生产模式下运行

时间:2018-08-27 15:08:05

标签: python django django-static-precompiler

我完全按照documentation的要求安装了django-static-precompiler来编译我的scss文件,并且运行良好...直到我从DEBUG设置TrueFalse。从那一刻起,就无法再找到静态文件了:

   File "/usr/local/lib/python3.6/site-packages/django/contrib/staticfiles/storage.py", line 422, in stored_name
     raise ValueError("Missing staticfiles manifest entry for '%s'" % clean_name)
 ValueError: Missing staticfiles manifest entry for 'COMPILED/css/porcupine.css'

在我的html文件中,按如下所示编译和加载.scss:

<link rel="stylesheet" href="{% static "css/porcupine.scss"|compile %}"/>

确实正在创建此文件,但仅当文件系统未拾取Debug=False时才出现。出乎意料的是,该文件正好位于应有的位置,可以在浏览器中检查编译的文件:

http://localhost:8000/static/COMPILED/css/porcupine.css

所以问题是:怎么回事?如何使Django在生产模式下(DEBUG = False)查找已编译文件?

我很乐意应要求提供更多设置,但是Django在不同文件中的许多设置中有些令人费解,我想使这篇文章保持简单。

0 个答案:

没有答案