【发布时间】:2015-05-22 09:34:16
【问题描述】:
我看到很多类似的问题,但找不到任何答案。我只需要使用 Django FileField 简单地上传或处理文件。这是我所拥有的:
forms.py
class UploadForm(forms.Form):
packet_file = forms.FileField()
base.html
<form action="process" method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
views.py
def index(request):
form = UploadForm() # An unbound form
return render(request, 'base.html', {'form': form})
def process(request):
if request.method == 'POST': # If the form has been submitted...
form = UploadForm(request.POST, request.FILES) # A form bound to the POST data
if form.is_valid():
所以 index() 处理空表单的初始渲染。当我填写它并转到 process() 时,它总是返回
此字段为必填项。
在 FileField 表单字段旁边。
这里有什么问题?我是否缺少任何常规 Django 设置,例如 MEDIA 文件存储等?当我无法验证表单时,在这个阶段是否有必要?
非常感谢 TC
【问题讨论】:
标签: python django forms filefield