我围绕boto提供的包装后端编写了一个包装器存储后端
myapp / storage_backends.py:
import urlparsefrom django.conf import settingsfrom storages.backends.s3boto import S3BotoStoragedef domain(url): return urlparse.urlparse(url).hostnameclass MediaFilesStorage(S3BotoStorage): def __init__(self, *args, **kwargs): kwargs['bucket'] = settings.MEDIA_FILES_BUCKET kwargs['custom_domain'] = domain(settings.MEDIA_URL) super(MediaFilesStorage, self).__init__(*args, **kwargs)class StaticFilesStorage(S3BotoStorage): def __init__(self, *args, **kwargs): kwargs['bucket'] = settings.STATIC_FILES_BUCKET kwargs['custom_domain'] = domain(settings.STATIC_URL) super(StaticFilesStorage, self).__init__(*args, **kwargs)
我的settings.py文件所在的位置…
STATIC_FILES_BUCKET = "myappstatic"MEDIA_FILES_BUCKET = "myappmedia"STATIC_URL = "http://XXXXXXXX.cloudfront.net/"MEDIA_URL = "http://XXXXXXXX.cloudfront.net/"DEFAULT_FILE_STORAGE = 'myapp.storage_backends.MediaFilesStorage'COMPRESS_STORAGE = STATICFILES_STORAGE = 'myapp.storage_backends.StaticFilesStorage'
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)