<script type="text/template" id="_escalation-container">
<div class="response-container">
<form action="" class="escalation-form" enctype="multipart/form-data">{% csrf_token %}
<a href="#" class="add-scripted-message">{% trans "Add Message" %}</a>
</div>
<div class="sub-content-footer" style="margin-top: 10px;">
<input id="file" type="file" name="file"/>
</div>
</form>
</div>
</script>
我看着Django official documentation,试着做上面写的东西。在
在视图.py公司名称:
^{pr2}$与handle_上传的_文件完全相同
def handle_uploaded_file(f):
with open('some/file/name.txt', 'wb+') as destination:
for chunk in f.chunks():
destination.write(chunk)
在升级窗体.py公司名称:
class EscalationForm(forms.ModelForm):
class Meta:
model = EscalationMessage
我的模型是:
class EscalationMessage(models.Model):
file = models.FileField(null=True, blank=True, upload_to='.')
而且,我把这些加入了我的设置.py
FILE_UPLOAD_HANDLERS = [
"django.core.files.uploadhandler.MemoryFileUploadHandler",
"django.core.files.uploadhandler.TemporaryFileUploadHandler"
]
但是当我试图发送附件时
File "/Users/mk/Documents/interaction/views.py", line 169, in create_escalation_message
escalation_message.file = EscalationMessage(file=request.FILES['file'])
File "/Users/mk/Documents/venvs/lib/python2.7/site-packages/django/utils/datastructures.py", line 322, in __getitem__
raise MultiValueDictKeyError(repr(key))
MultiValueDictKeyError: "'file'"
我是新的网页开发,我正在写一个小的演示。我试图发送一个带有附件的消息,我搜索了一个示例,但是它给出了这个错误。你知道这个错误吗?在
谢谢你
文件上载必须使用
POST
方法。将您的form
标记更改为:相关问题 更多 >
编程相关推荐