Необходимо переопределить метод сохранения для поля изображения и сохранить его как строку base64 с помощью django

models.py

class Organisation(models.Model):

    org_id = models.CharField(max_length=50,default=uuid.uuid4, editable=False, unique=True, primary_key=True)
    org_name = models.CharField(unique=True,max_length=100)
    org_code = models.CharField(unique=True,max_length=20)
    org_mail_id = models.EmailField(max_length=100)
    org_phone_number = models.CharField(max_length=20)
    org_address = models.JSONField(max_length=500, null=True)
    product = models.ManyToManyField(Product, related_name='products')
    org_logo = models.ImageField(upload_to=upload_org_logo, null=True, blank=True,)
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

Мне нужно сохранить изображение, которое я получаю в поле image на org_logo в виде строки base64 и загрузить его в s3 bucket, который я указал в качестве хранилища файлов, используя django storages. Примечание: Объект файла будет входом, который я буду получать от фронтенда (React). Мне нужно переопределить метод save, чтобы сохранить его как строку base64.

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

import base64
image = open(form.cleaned_data['image'], 'rb')
image_read = image.read()
image_64_encode = base64.encodebytes(image_read)
Вернуться на верх