Как обновлять поля изображений с помощью форм Django

Я пытаюсь создать приложение для ведения блога, и в нем у меня есть 2 формы, одна для редактирования уже существующих постов, а другая для их создания. Однако я не могу получить обновленные изображения, когда отправляется форма редактирования. Все текстовые данные проходят через...

Models.py:

class Post(models.Model):
    title = models.CharField(max_length=200, unique=True)
    slug = models.SlugField(max_length=200, unique=True)
    author = models.ForeignKey(User, on_delete=models.CASCADE, related_name= 'blog_posts')
    short_description = models.TextField()
    updated_on = models.DateTimeField(auto_now=True)
    content = RichTextUploadingField()
    created_on = models.DateTimeField(auto_now=True)
    status = models.IntegerField(choices=Status, default=0)
    cover_image = models.ImageField(upload_to = 'coverimages', null =True, blank = True)
    captioned_image = models.ImageField(upload_to = 'captionedimages', null=True, blank = True)
    caption = models.CharField(max_length=300)
    featured = models.IntegerField(choices=Featured, default=1)
    category = models.ForeignKey(PostCategory, on_delete=models.CASCADE, null=True, blank=True)
    embedded_code = models.TextField(blank=True, null=True, default='null')
    tags = models.ManyToManyField(Tag, blank=True)

    class Meta:
        ordering = ['-created_on']
    
    def __str__(self):
        return self.title

forms.py:

class EditForm(forms.Form):
    title = forms.CharField(max_length=100, label='Post Title')
    short_description = forms.CharField(widget=forms.Textarea(attrs={"rows":3, "cols":100}))
    content = forms.CharField(widget=CKEditorUploadingWidget())
    status = forms.NullBooleanField(label='Ready to Publish?')
    image = forms.ImageField(label='Select a cover image:', required=False)
    captioned_image = forms.ImageField(label='Select a captionable image:', required=False)
    caption = forms.CharField(max_length=200)
    try:
        category = forms.ModelChoiceField(queryset=PostCategory.objects.all())
    except:
        category = forms.ChoiceField(choices= ('default'))
    embed = forms.CharField(widget=forms.Textarea(attrs={"rows":3, "cols":100}))
    tags = forms.CharField(widget=forms.Textarea(attrs = {"rows":1, "cols":150}))

editpost.html:

После отправки формы изображение не сохраняется в папке media/coverimages, и сервер разработки возвращает:

Not Found: /media/images.jpg
[23/Jan/2022 09:16:24] "GET /media/images.jpg HTTP/1.1" 404 3786

Одна вещь, которую я заметил, это то, что если я использую админку сайта, изображение загружается правильно, что наводит меня на мысль, что возможно проблема в форме или в том, как она обрабатывается

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