我见过类似的问题,但不能算出这个接收POST数据,我有上传的图片上的模型的程序:查看没有从图像上传页面
views.py:
def upload_pic(request):
if request.method == "POST":
image_form = ImageUploadForm(request.POST, request.FILES)
if image_form.is_valid():
image_form.save()
return HttpResponse('success')
else:
return HttpResponse('fail')
return render(request, 'tracker/upload_pic.html', {"image_form": image_form})
模板:
{% load staticfiles %}
<!DOCTYPE html>
<html>
<body>
<form method="POST" enctype="multipart/form-data">{% csrf_token %}
{{ image_form.img }}
<input type="submit" value="submit" />
</form>
</body>
</html>
urls.py:
urlpatterns = [
url(r'^upload_pic', views.upload_pic, name='upload_pic')
]
只是想保存到用户模式,所以我可以在以后找回它,但我不能访问任何POST数据,我也试着在HTML模板添加action = "{% url upload_pic %}"
我form
,但我得到了NoReverseMatch
错误
class ImageUploadForm(forms.ModelForm):
#model to store the information about the pictures
class Meta:
model = ExtendedProfile
exclude =()
请发布图片上传表格也 –
一个错误我想指出'action =“{%url upload_pic%}”'这是不正确的。这'动作=“{%URL‘upload_pic’%}”'是正确的 –
此外,该视图可以不承担责任摆在首位显示的形式,因为你只是显示为“失败”时,它是不是一个POST。所以你应该显示这样做的视图和URL,并解释为什么它们是分开的。 –