Django/React/Axios Обновление изображения отправляет строковое значение вместо обновления изображения

Я пытаюсь разработать веб-сайт для организации выпускников. У меня есть таблица для событий с несколькими полями, два из которых являются полями изображений. Я могу успешно создать событие со всеми полями, но я не могу обновить его, как предполагалось. Когда я пытаюсь обновить, я могу обновить только одно поле, если я меняю и картинку. Я думаю, что он отправляет URL-адрес местоположения фотографии в виде строки, поэтому я получаю ошибку "файл не соответствует ожидаемому формату", но если я загружаю изображение, оно работает как положено. Я хотел бы иметь возможность обновлять другие поля без необходимости изменять изображение. Поля изображения - это gallery и banner_image (я просто пытаюсь пока решить проблему с одним из них, и они находятся в нижней части формы. У меня есть мои функции axios http в отдельном файле.

Аксиос функции

import axios from "axios";

const apiUrl = "/accounts/register/";
const loginUrl = "/accounts/login/"
const eventUrl= "/main/api/event/";

// Auth
export const signup = (user)=>{
    return axios.post(apiUrl,user)
}

export const login = (user)=>{
    return axios.post(loginUrl,user,{},{auth:user});
}

// Events 
export const getEvents = ()=>{
    return axios.get(`${eventUrl}`)
}
export const createEvent = (eventObject)=>{
    return axios.post(eventUrl,eventObject);
}
export const getEventById = (id)=>{
    return axios.get(`${eventUrl}${id}/`);
}
export const deleteEventById = (id)=>{
    return axios.delete(`${eventUrl}${id}/`);
}
export const updateEventById = (id, eventObject)=>{
    return axios.put(`${eventUrl}${id}/`,eventObject);
}

Django models:

from django.db import models
from datetime import date
from accounts.models import User
from .states import CONTIGUOUS_STATES

class Event(models.Model):
    event_name = models.CharField(max_length=150)
    date = models.CharField(max_length=40)
    time = models.CharField(max_length=40,null=True, blank=True)
    address_line = models.CharField(max_length=250, null=True, blank=True)
    city = models.CharField(max_length=150, blank=True, null=True, default=None)
    state = models.CharField(max_length=25, choices=CONTIGUOUS_STATES, default='Louisiana')
    zip_code = models.CharField(max_length=150)
    contact_name = models.CharField(max_length=150, blank=True, null=True, default=None)
    contact_number = models.CharField(max_length=150, blank=True, null=True, default=None)
    contact_email = models.EmailField(max_length=150, blank=True, null=True, default=None)
    banner_image = models.FileField(upload_to='media/Event Media', null=True, blank=True, default='EventBannerDefault.jpg') 
    gallery = models.ImageField(upload_to='media/Event Media', null=True, blank=True,) 
    description = models.TextField(max_length=2500)
    # rsvpd_members = models.ManyToManyField(User, blank=True)
    registration_fees = models.CharField(max_length=150, null=True, blank=True)

    def __str__(self):
      return(self.event_name)

Страница формы для обновления событий

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