Объектное хранилище Django не отражается в моем объектном хранилище

Я пытаюсь интегрировать Object Storage в свой проект Django, и моя текущая установка включает Django, DRF и PostgreSQL. В частности, я пытаюсь обработать загрузку изображения из конечной точки API и сохранить его в Object Storage.

class Announcement(models.Model):
image = models.ImageField(upload_to='media/')

Теперь, когда я пытаюсь получить доступ к конечной точке API для этой операции. Изображение хранится где-то в моем base_dir/media.

и вот мое бото3\ хранилище

AWS_ACCESS_KEY_ID = os.environ.get('DO_SPACES_KEY')
AWS_SECRET_ACCESS_KEY = os.environ.get('DO_SPACES_SECRET')
AWS_STORAGE_BUCKET_NAME = os.environ.get('DO_SPACES_BUCKET')
AWS_S3_ENDPOINT_URL = os.environ.get('DO_SPACES_ENDPOINT')
AWS_S3_OBJECT_PARAMETERS = {
    'CacheControl': 'max-age=86400',
}
AWS_LOCATION = 'media'

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]
STATIC_URL = 'https://%s/%s/' % (AWS_S3_ENDPOINT_URL, 'static')
MEDIA_URL = 'https://%s/%s/' % (AWS_S3_ENDPOINT_URL, AWS_LOCATION)
STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'


Я попытался изменить настройки, но безуспешно. Я также проверил учетные данные, медиафайлы и значения времени выполнения данных.

Я также проверил базу данных postgresql, которая содержит то, что кажется URL-адресом изображения в моем хранилище объектов.

На самом деле вам нужно изменить способ реализации ваших модели, преобразовав ее в двоичную.

так, что его:

class Announcements(models.Model): 
image = model.BinaryField()

таким образом, вы можете хранить его напрямую

Вернуться на верх