首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使django-存储和django-管道协同工作

如何使django-存储和django-管道协同工作
EN

Stack Overflow用户
提问于 2013-05-10 09:45:21
回答 1查看 852关注 0票数 1

我想使用django-管道和django-存储在heroku上的个人应用程序。只使用django-管道工作得很好,只使用django-存储就像一种魅力,但我无法将两者结合在一起:

当您阅读文档时,您会发现这两种方法都可以用于收藏品:

Django-pipeline:

代码语言:javascript
复制
settings.py
STATICFILES_STORAGE = 'pipeline.storage.PipelineCachedStorage'
PIPELINE_CSS = {
'app': {
    'source_filenames': (
        'css/*',
    ),
    'output_filename': 'css/min.css',
    'variant': 'datauri',
},
}

Django-Storage

代码语言:javascript
复制
settings.py
STATICFILES_STORAGE = 's3storages.StaticStorage'

s3storages.py
from storages.backends.s3boto import S3BotoStorage
StaticStorage = lambda: S3BotoStorage(
      bucket='app_name', 
      location='assets'
)

因此,这两个应用程序都需要设置STATICFILE_STORAGE;当我为s3设置存储时;django-管道不创建min.css和min.js.

因此,我找到了this solution on stack并做了以下操作:

代码语言:javascript
复制
from staticfiles.storage import CachedFilesMixin
from pipeline.storage import PipelineMixin
from storages.backends.s3boto import S3BotoStorage

class S3PipelineStorage(PipelineMixin, CachedFilesMixin, S3BotoStorage):
pass

# Define bucket and folder for static files.
StaticStorage = lambda: S3BotoStorage(
      bucket='app_name', 
      location='assets'
)

现在,每次我使用收集器命令时,静态文件都被发送到S3,但是django-管道min.css和min.js不被发送.在我的STATIC_ROOT目录中也没有它们的踪迹..。

你知道我怎样才能把两者结合起来吗?

编辑1:

现在我有了以下内容:(我更改了s3storage :)

代码语言:javascript
复制
settings.py
STATICFILES_STORAGE = 's3storages.StaticStorage'

s3storage.py
from staticfiles.storage import CachedFilesMixin
from pipeline.storage import PipelineMixin
from storages.backends.s3boto import S3BotoStorage

class S3PipelineStorage(PipelineMixin, CachedFilesMixin, S3BotoStorage):
pass

# Define bucket and folder for static files.
StaticStorage = lambda: S3PipelineStorage(
      bucket='app_name', 
      location='assets'
)
EN

回答 1

Stack Overflow用户

发布于 2013-05-10 18:13:29

设置STATICFILES_STORAGE到:s3storage.S3PipelineStorage

使用settings.AWS_STORAGE_BUCKET_NAMEsettings.AWS_LOCATION配置S3。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16479442

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档