Django - сохранение списка изображений базы 64 в базу данных

У меня есть список изображений base64, которые я отправляю из панели react. список изображений выглядит следующим образом:

[
"data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAkG",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeAAAADkCAY"
]

Примечание: я удалил большинство символов, потому что каждый индекс символов более 2000, и это просто пример того, что у меня есть.

поэтому я хочу сохранить их в модели django. мое поле для сохранения этого списка изображений следующее:

ArrayField(base_field=models.ImageField(upload_to='hotel_images/'))

Итак, как мне преобразовать список изображений base64 в реальные изображения и сохранить их в этом ArrayField? Или у вас есть лучший способ сохранения этого списка изображений base64?

Примечание: я конвертирую изображения в base64 в панели react следующим кодом:

const FR = new FileReader();

FR.addEventListener("load", function () {
   // FR.result is image converted to base64
   image = FR.result;
})

FR.readAsDataURL(img);

и я делаю это потому, что у меня есть json, который содержит другие поля, такие как имя и описание, и когда я хочу отправить этот json с телом запроса, я должен использовать JSON.stringify() для этого, и когда я использую JSON.stringify(), поле images превращается в пустой массив, и я должен преобразовать изображения в base64. так что если у вас есть решение этой проблемы, это может помочь!

Последнее примечание: моя база данных - postgreSQL.

вы можете использовать ListField и Base64ImageField в качестве дочерних

images = serializers.ListField(
      child=Base64ImageField(required=False), required=False
  )
Вернуться на верх