Amazon s3 在开发和AmazonS3中一起提供静态文件
我想从AmazonS3和本地服务器上获取静态文件 另外,我不知道如何设置Amazon s3 在开发和AmazonS3中一起提供静态文件,amazon-s3,django-staticfiles,Amazon S3,Django Staticfiles,我想从AmazonS3和本地服务器上获取静态文件 另外,我不知道如何设置MEDIA\u URLSTATIC\u ROOT和MEDIA\u ROOT 背景: 我使用django-boto从AmazonS3提供我的静态文件,我的设置/base.py是: STATICFILES_LOCATION = 'assets' STATICFILES_STORAGE = 'custom_storages.StaticStorage' STATIC_URL = "https://%s/%s/" % (AWS_S
MEDIA\u URL
STATIC\u ROOT
和MEDIA\u ROOT
背景:
我使用django-boto
从AmazonS3提供我的静态文件,我的设置/base.py
是:
STATICFILES_LOCATION = 'assets'
STATICFILES_STORAGE = 'custom_storages.StaticStorage'
STATIC_URL = "https://%s/%s/" % (AWS_S3_CUSTOM_DOMAIN, STATICFILES_LOCATION)
MEDIAFILES_LOCATION = 'media'
MEDIA_URL = "https://%s/%s/" % (AWS_S3_CUSTOM_DOMAIN, MEDIAFILES_LOCATION)
DEFAULT_FILE_STORAGE = 'custom_storages.MediaStorage'
我的自定义存储.py
文件内容是:
from django.conf import settings
# from storages.backends.s3boto3 import S3Boto3Storage
from storages.backends.s3boto import S3BotoStorage
class StaticStorage(S3BotoStorage):
location = settings.STATICFILES_LOCATION
class MediaStorage(S3BotoStorage):
location = settings.MEDIAFILES_LOCATION
所有这些都很有效。
当我执行collectstatic
时,我的静态文件被上传到AmazonS3中的bucket中
我遇到的问题是,每次我对css
或js
文件进行更改时,我都需要执行collectstatic
命令
我如何设置我的项目(设置),以便在本地服务器上同时为S3和django中的静态文件提供服务
我有一个settings/development.py
文件,其中覆盖了以下设置:
STATIC_URL = '/assets/'
STATICFILES_LOCATION = 'assets'
MEDIAFILES_LOCATION = 'media/'
MEDIA_URL = MEDIAFILES_LOCATION
STATIC_ROOT = os.path.join(BASE_DIR, "assets")
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
而我的url.py
main文件我有以下条件:
if settings.DEBUG:
urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)