Изображения исчезают в героку даже после хранения их в ведре S3 - PullRequest
0 голосов
/ 01 мая 2020

Я использую sqlite3 в качестве моей базы данных , то есть базы данных django по умолчанию. Мне сказали, что Героку эфемерна. Таким образом, сохраненные изображения будут испарены. Поэтому я использовал Amazon S3 bucket для хранения всех моих стати c файлов и изображений, загруженных через django admin . Тем не менее изображения, которые я загружаю через django admin , получают , исчезают через пару часов.

В моем settings.py :

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}
AWS_ACCESS_KEY_ID = **
AWS_SECRET_ACCESS_KEY = **
AWS_STORAGE_BUCKET_NAME = 'bucket'
AWS_S3_FILE_OVERWRITE = False
AWS_DEFAULT_ACL = None
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'

В моем models.py :

class Moment(models.Model):
    name = models.CharField(max_length=25)
    img = models.ImageField(upload_to='moments')

    def __str__(self):
        return self.name

Нужно ли подключаться к Postgresql, который обеспечивает heroku ? Или я до сих пор совершил ошибку? Ссылка на мой сайт: http://fine-arts-club.herokuapp.com/

1 Ответ

0 голосов
/ 01 мая 2020

Где хранится ваша база данных SQLite? Если это также относится к Dyno, то он будет «сбрасываться» каждый раз, когда Dyno также перезапускается. Вместо этого использование Heroku Postgres обеспечит выживание вашей базы данных при перезапуске Dyno.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...