我有form
用户只需上传图片,但问题是我选择图片并按下按钮提交。虽然我已经指出了图像,但它在页面上显示This field is required.
。这就是它所做的一切。我检查了它是否实际提交但不是,它不是。可能是什么问题?
的 Models.py
class pic(models.Model):
username = "anonymous"
picpost = models.ImageField(upload_to='anon_pics')
creation_date = models.DateTimeField(auto_now_add=True)
forms.py
from django import forms
from .models import pic
class PicForm(forms.ModelForm):
class Meta:
model = pic
fields = [
"picpost"
]
view.py
def pic_create(request):
form = PicForm(request.POST or None)
if form.is_valid():
instance = form.save(commit=False)
instance.save()
context = {
"form" : form,
}
return render(request, "create_pic.html", context)
create_pic.html
<body>
<form method='POST' action=''>{% csrf_token %}
{{ form.as_p }}
<input type='submit' value='Upload Picture' />
</form>
</body>
非常感谢任何帮助。非常感谢你!
答案 0 :(得分:2)
这里有两个问题。
首先,您的观点需要将request.FILES
以及request.POST
传递给表单。
其次,模板中的表单元素需要包含enctype="multipart/form-data"
。