Python django form.is_valid()在上传文件时始终返回0
我有以下表格(连同其他两份表格): 以下是我的html:Python django form.is_valid()在上传文件时始终返回0,python,django,Python,Django,我有以下表格(连同其他两份表格): 以下是我的html: <div class="panel panel-danger"> <div class="panel-heading"> <h3 class="panel-title">Panel title</h3> </div> <div class=
<div class="panel panel-danger">
<div class="panel-heading">
<h3 class="panel-title">Panel title</h3>
</div>
<div class="panel-body">
<form action="" method="POST" role="form" enctype="multipart/form-data">
{% csrf_token %}
<legend>Upload a file: </legend>
<div class="form-group">
<input type="file" name="file" class="form-control" id="" placeholder="Input field">
</div>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
即使设置了
request.files
中的值,也会执行Always else条件。我做错了什么?您需要添加request.FILES
,如下所示:
fileForm = UploadFileForm(request.POST, request.FILES)
阅读手册:form=UploadFileForm(request.POST,request.FILES)有时候,我们太过专注于编码,以至于忘记了阅读手册。对了,谢谢。是的:)没错:)见鬼,我怎么会错过这个呢。不管怎样,谢谢。没问题,有时候忘记这样的事情是正常的。您可以接受它作为您问题的答案:)
if request.method == 'POST':
print "I am in request."
print request.FILES['file']
# create a form instance and populate it with data from the request:
formName = NameForm(request.POST)
formHandle = HandleForm(request.POST)
fileForm = UploadFileForm(request.POST)
successMessages = []
failureMessages = []
# check whether it's valid:
#
if fileForm.is_valid():
print "file is uploaded."
print request.FILES['file']
else:
print "File form is not set."
fileForm = UploadFileForm(request.POST, request.FILES)