我试图用django pipelineonDjango 1.6.3编译SASS和压缩CSS文件,但是在访问我的站点后,我得到了以下错误:
ValueError: The file 'css/test2.css' could not be found with <pipeline.storage.PipelineCachedStorage object at 0x0585DF50>.
我按照readthedocs.org的指南配置了管道:我向INSTALLED_APPS
添加了管道,然后定义了STATIC_URL
和{
STATIC_URL = '/test/forum/skins/default/media/'
STATIC_ROOT = '/test/forum/skins/default/media/'
文件夹树:
我将SASSCompiler
添加到PIPELINE_COMPILERS
中,然后添加到要压缩的文件的路径:
最后,我将css链接到我的XHTML索引:
{% load compressed %}
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
{% compressed_css 'main' %}
</head>
我不明白我做错了什么。 谢谢你的帮助!在
当我运行collectstatic
时,这将从django复制文件,而不是从我的项目中复制文件
F:\DEV\DJANGO\apps\test>python manage.py collectstatic
You have requested to collect static files at the destination
location as specified in your settings:
F:\test\forum\skins\default\media
This will overwrite existing files!
Are you sure you want to do this?
Type 'yes' to continue, or 'no' to cancel: yes
Copying 'F:\DEV\DJANGO\apps\django\django\contrib\admin\static\admin\css\base.
css'
Copying 'F:\DEV\DJANGO\apps\django\django\contrib\admin\static\admin\css\chang
elists.css'
Copying 'F:\DEV\DJANGO\apps\django\django\contrib\admin\static\admin\css\dashb
oard.css'
Copying 'F:\DEV\DJANGO\apps\django\django\contrib\admin\static\admin\css\forms
.css'
Copying 'F:\DEV\DJANGO\apps\django\django\contrib\admin\static\admin\css\ie.cs
s'
[etc .... ]
但是路径F:\test\forum\skins\default\media
是错误的,我的项目所在地
在F:\DEV\DJANGO\apps\test\forum\skins\default\media
中。在
然后我试图找到静态文件:
F:\DEV\DJANGO\apps\test> python manage.py findstatic css/main.css
No matching file found for 'css/main.css'.
但文件存在。在
在Django的
settings.py
中,STATIC_ROOT
变量告诉Django将静态文件移动到何处,而STATIC_URL
是用户将看到的URL路径,您可以从中访问浏览器中的文件。请参阅有关静态文件的Django文档:https://docs.djangoproject.com/en/dev/ref/settings/#static-files
例如,假设您在设置.py文件:
现在,让我们在
^{pr2}$/home/fuiba/git/your-django-project/
内的同一台机器上进行软件开发。在Django项目中有一个名为static的子目录,在该目录中有一个名为custom.css
的文件。此文件的完整路径是:现在,在运行
这是它如何工作的基础。在您的例子中,您似乎是在Windows下开发的,所以有一些注意事项。首先,不要在路径中使用反斜杠('\'),只使用正斜杠。但是,您仍然必须指定驱动器号和冒号。所以,让我们将python manage.py collectstatic
之后,您的样式表将移动到您的STATIC_ROOT
目录中。现在启动web服务器,可以通过项目的STATIC_URL
访问静态文件。假设您可以在本地浏览器的主机8000上运行样式表:STATIC_ROOT
设置为:我选择这个选项是为了不污染您的测试项目目录,并且应该在上面的位置创建一个包含静态文件的同级目录。在
告诉我你们相处得如何,我会尽力提供更多细节。在
祝你好运!在
相关问题 更多 >
编程相关推荐