python – Django Compressor,S3和SASS,编译的文件未上传
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – Django Compressor,S3和SASS,编译的文件未上传,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2491字,纯文字阅读大概需要4分钟。
内容图文
![python – Django Compressor,S3和SASS,编译的文件未上传](/upload/InfoBanner/zyjiaocheng/778/277a0a881376405fa8883bf01de46d3c.jpg)
我正在尝试使用Amazon s3和SASS设置Django Compressor,但我遇到了这个问题.
所以,这些是django压缩器的设置:
########## STATIC FILE CONFIGURATION
# See: https://docs.djangoproject.com/en/dev/ref/settings/#static-root
STATIC_ROOT = normpath(join(SITE_ROOT, 'static'))
# See: https://docs.djangoproject.com/en/dev/ref/settings/#static-url
STATIC_URL = '/static/'
# See: https://docs.djangoproject.com/en/dev/ref/contrib/staticfiles/#std:setting-STATICFILES_DIRS
STATICFILES_DIRS = (
normpath(join(SITE_ROOT, 'assets')),
)
COMPRESS_CSS_FILTERS = [
#creates absolute urls from relative ones
'compressor.filters.css_default.CssAbsoluteFilter',
#css minimizer
'compressor.filters.cssmin.CSSMinFilter'
]
COMPRESS_OUTPUT_DIR = '' #fixes bug with absolute urls
COMPRESS_PRECOMPILERS = (
('text/x-scss', 'sass --scss --compass {infile} {outfile}'),
('text/x-sass', 'sass --compass {infile} {outfile}'),
)
DEFAULT_FILE_STORAGE = 'devfest.storage.CachedS3BotoStorage'
STATICFILES_STORAGE = DEFAULT_FILE_STORAGE
AWS_ACCESS_KEY_ID = get_env_setting('AWS_ACCESS_KEY_ID')
AWS_SECRET_ACCESS_KEY = get_env_setting('AWS_SECRET_ACCESS_KEY')
AWS_STORAGE_BUCKET_NAME = 'asd'
COMPRESS_OFFLINE = True
COMPRESS_ENABLED = True
COMPRESS_URL = 'https://{}.s3.amazonaws.com/'.format(AWS_STORAGE_BUCKET_NAME)
COMPRESS_ROOT = STATIC_ROOT
这是调用文件的模板的一部分
{% compress css %}
<link rel="stylesheet" href="{% static 'css/normalize.css' %}">
<link rel="stylesheet" type="text/x-sass" href="{% static 'css/main.sass' %}">
<link rel="stylesheet" href="{% static 'css/font-awesome.min.css' %}">
{% endcompress css %}
问题是压缩文件没有上传,因为它们被放在专用文件夹中(只上传资产中的文件)
? tree static/
static/
├── css
│?? └── 46086ae5ebb4.css
└── manifest.json
我做错什么了吗?
解决方法:
修正了这种方式:
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
STATICFILES_STORAGE = 'devfest.storage.CachedS3BotoStorage'
COMPRESS_STORAGE = STATICFILES_STORAGE
AWS_ACCESS_KEY_ID = get_env_setting('AWS_ACCESS_KEY_ID')
AWS_SECRET_ACCESS_KEY = get_env_setting('AWS_SECRET_ACCESS_KEY')
AWS_STORAGE_BUCKET_NAME = 'asd'
AWS_QUERYSTRING_AUTH = False
COMPRESS_OFFLINE = True
COMPRESS_URL = 'https://{}.s3.amazonaws.com/'.format(AWS_STORAGE_BUCKET_NAME)
COMPRESS_ROOT = STATIC_ROOT
我添加了AWS_QUERYSTRING_AUTH = False,因为它为每个页面重新加载创建了一个不同的URL.
内容总结
以上是互联网集市为您收集整理的python – Django Compressor,S3和SASS,编译的文件未上传全部内容,希望文章能够帮你解决python – Django Compressor,S3和SASS,编译的文件未上传所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。