为什么我从Django imageField得到“This field is required”错误?[关闭]

hmtdttj4  于 2023-11-20  发布在  Go
关注(0)|答案(1)|浏览(154)

**已关闭。**此问题为not reproducible or was caused by typos。目前不接受回答。

这个问题是由错字或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
2天前关闭。
Improve this question
我在Django的image字段中遇到了问题。它说即使我选择了一个图像,image字段也是空的。这是我的models.py:

from django.db import models

class Post(models.Model):
    picture = models.ImageField(upload_to="uploads")

字符串
这是我的forms.py:

from django import forms
from django.forms import ModelForm
from .models import Post

class PostForm(ModelForm):
    class Meta:
        model = Post
        fields = '__all__'


这是我的views.py:

from django.shortcuts import render, redirect
from .forms import PostForm

def postsite(request):
    form = PostForm()
    if request.method == 'POST':
        form = PostForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()
        else:
            print(form.errors)
        return redirect('post')

    context = {'form':form}
    return render(request, 'post.html', context)


这是我的post.html:

<form action="" method="POST" enctyppe="multipart/form-data">
        {% csrf_token %}
        {{form.as_p}}
        <input type="submit" value="Submit Post">
    </form>


在我为imageField选择了一个图像并提交表单之后,下面的代码print(form.errors)的输出是:

<ul class="errorlist"><li>picture<ul class="errorlist"><li>This field is required.</li></ul></li></ul>


由于其他关于此错误的讨论,我试图将此添加到我的表单中:

enctyppe="multipart/form-data"


然而,错误仍然存在。

332nm8kg

332nm8kg1#

您在表单操作enctyppe=中有拼写错误。

<form action="" method="POST" enctyppe="multipart/form-data">

字符串
应该是:

<form action="" method="POST" enctype="multipart/form-data">

相关问题