Как сохранить статический файл на облачном хранилище Google с помощью развертывания heroku?
Я использовал whitenoise для сохранения статических файлов, но теперь я хочу сохранить их в хранилище Google cloude. Поэтому я переустановил dyno и настроил его следующим образом, но папка static не создается в хранилище. Я не уверен, чего мне не хватает.
google_credential работает хорошо. Файл загрузки хорошо сохраняется. Уровень также выполняется без проблем. Однако статические файлы не генерируются в GCS.
settings.py configuration
if DEBUG is False :
ALLOWED_HOSTS = ["cineacca.herokuapp.com", 'cineacca.com',]
GOOGLE_APPLICATION_CREDENTIALS = os.environ.get("GOOGLE_APPLICATION_CREDENTIALS")
DEFAULT_FILE_STORAGE = "config.custom_storages.UploadStorage"
STATICFILES_STORAGE = "config.custom_storages.StaticStorage"
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
GS_DEFAULT_ACL = "publicReadWrite"
GS_BUCKET_NAME = "cineacca_bucket"
GS_PROJECT_ID = os.environ.get("GS_PROJECT_ID")
MEDIA_URL = "/media/"
STATIC_URL = "/static/"
django_heroku.settings(locals())
custom_storages.py
from storages.backends.gcloud import GoogleCloudStorage
from storages.utils import setting
class StaticStorage(GoogleCloudStorage):
bucket_name = setting('GS_BUCKET_NAME')
location = "static/"
class UploadStorage(GoogleCloudStorage):
bucket_name = setting('GS_BUCKET_NAME')
location = "uploads/"