我尝试将文件上传到带有表单的django模型,但是当它到达form.is_valid()
时失败。
我将表单添加到Twitter Bootstrap模式,我想这可能会导致问题?
当我打印form.errors
时,我收到一条消息,说明该表格是必需的。我很明显在提交之前在表单中添加了一个文本文件,所以我不确定问题是什么。
views.py
- 成功越过request.method == 'POST'
。在form.is_valid()
失败。
if request.method == 'POST':
form = ConfigurationForm(request.POST, request.FILES)
print("ERROR " + str(form.errors))
if form.is_valid():
print("Success")
elif not form.is_valid():
print("Failed")
forms.py:
from django import forms
from .models import NetworkApplications
class ConfigurationForm(forms.Form):
config_file = forms.FileField(label="Select a file")
class Meta:
model = NetworkApplications
在我的模板中:
<form method="post" enctype="multipart/form-data">{% csrf_token %}
{{form.config_file}}
</form>
request.FILES
似乎是空的。
form.errors
会返回此信息:
<ul class="errorlist"><li>config_file<ul class="errorlist"><li>This field is
required.</li></ul></li></ul>
页脚:
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal" onclick="destroyModal('newApplicationModal');">Close</button>
<button type="button" id="newNetworkModalSave" class="btn btn-primary" onclick="addNewApplication();" data-dismiss="modal" >Save</button>
</div>