【发布时间】:2016-08-10 01:17:25
【问题描述】:
我正在尝试在我的 django_cms 站点中实现 sass_processor,但遇到了一个奇怪的错误。
Unable to locate file mysite/static/scss/main.scss while rendering tag 'sass_src' in template /Users/USER/Work/DIR/APP/SITE/mysite/templates/base.html
我已按照最新的 Django CMS 安装说明进行操作,一切都已设置好并正常运行。我试过导入静态 css 文件,效果很好。
例如在我的 base.html 中
<link href="{% static 'myapp/static/css/main.css' %}" rel="stylesheet" type="text/css" />
完美导入
我已确保在我的模板中包含 sass_tags
我已按照此处 github 页面上的说明进行操作: https://github.com/jrief/django-sass-processor
我的sass导入如下:
<link href="{% sass_src 'myapp/static/scss/main.scss' %}" rel="stylesheet" type="text/x-scss" />
我的静态文件结构如下:
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(DATA_DIR, 'media')
STATIC_ROOT = os.path.join(DATA_DIR, 'static')
SASS_ROOT = os.path.join(BASE_DIR, 'mysite', 'static', 'scss')
SASS_PROCESSOR_ROOT = SASS_ROOT
COMPRESS_PRECOMPILERS = (
('text/x-scss', 'django_libsass.SassCompiler'),
)
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'mysite', 'static'),
)
SASS_PROCESSOR_INCLUDE_DIRS = (
os.path.join(BASE_DIR, 'mysite', 'static'),
SASS_ROOT
)
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'sass_processor.finders.CssFinder',
)
SASS_PROCESSOR_ENABLED = True
我的文件结构如下:
|+env/
`~tate/
|+media/
|~mysite/
| |~static/
| | |+css/
| | `~scss/
| | `-main.scss
| |+templates/
| |-__init__.py
| |-__init__.pyc
| |-settings.py
| |-settings.pyc
| |-urls.py
| |-urls.pyc
| |-wsgi.py
| `-wsgi.pyc
|+static/
|-manage.py*
`-requirements.txt
我觉得我错过了某种路径配置,但我不确定它可能在哪里,因为我遵循了 Django CMS 教程和 sass_processor 页面上概述的说明。
感谢任何帮助。
【问题讨论】:
-
您好 Daniel,您的本地机器是否出现此错误?还是在远程服务器上?
-
最明显的问题,但你确定你提供了正确的路径吗?你能粘贴你的静态文件结构吗?你设置了 SASS_PROCESSOR_ROOT 变量吗?
-
@mateuszb 我已更新,希望对您有所帮助
-
@Paulo 只是我的本地机器。
标签: python django sass django-cms