Django:表单数据不保存
Django : Form data not saving
我有一个 form
用户只需上传图片,但问题是当我选择图片并按下按钮提交时。虽然我已经指出了图像,但它在页面上显示 This field is required.
。这就是全部 does.I 检查它是否实际提交但没有,这可能是 not.What 的问题?
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>
非常感谢appreciated.Thank您的帮助!
这里有两个问题。
首先,您的视图需要将 request.FILES
和 request.POST
传递给表单。
其次,模板中的表单元素需要包含 enctype="multipart/form-data"
。
我有一个 form
用户只需上传图片,但问题是当我选择图片并按下按钮提交时。虽然我已经指出了图像,但它在页面上显示 This field is required.
。这就是全部 does.I 检查它是否实际提交但没有,这可能是 not.What 的问题?
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>
非常感谢appreciated.Thank您的帮助!
这里有两个问题。
首先,您的视图需要将 request.FILES
和 request.POST
传递给表单。
其次,模板中的表单元素需要包含 enctype="multipart/form-data"
。