Django表单提交按钮

时间:2010-01-17 07:40:02

标签: python django django-forms

我在django中有一个非常简单的文件上传表单类:

class UploadFileForm(forms.Form):
    category = forms.ChoiceField(get_category_list())
    file = forms.FileField()

一个问题是当我{{ form.as_p }}时,它没有提交按钮。我如何添加一个?

2 个答案:

答案 0 :(得分:9)

<input type="submit" value="Gogogo!" />

答案 1 :(得分:0)

这是最小HTML表单(docs)的模板:

<form method="post">
    {% csrf_token %}
    {{ form.as_p }}
    <input type="submit" value="Submit">
</form>

将其放在<PROJECT>/templates/MyForm.html下,然后用以下内容替换'DIRS': []中的<PROJECT>/<PROJECT>/settings.py

        'DIRS': [os.path.join(BASE_DIR, "templates")],

这样的代码可用于在用户执行GET请求时将其提供给用户,并在用户通过单击“提交”按钮(docs)发布该表单时对其进行处理:

from django.http import HttpResponse, HttpResponseNotFound
from django.shortcuts import render
from . import forms

def my_form(request):
    if request.method == 'POST':
        form = forms.MyForm(request.POST)
        if form.is_valid():
            return HttpResponse('Yay valid')
    else:
        form = forms.MyForm()

    return render(request, 'MyForm.html', {'form': form})