Django表单:集成提交按钮作为表单的一部分

时间:2014-03-19 04:08:39

标签: python django django-forms

所以说我有一个带有以下内容的django views.py文件:

def addauthorView(request):
if request.method == 'POST':
     f = ContactForm(request.POST)
     if form.is_valid():
        first_name = form.cleaned_data['firstname']
        last_name = form.cleaned_data['lastname']
        user_email = form.cleaned_data['email']
        c = Contact(firstname=first_name, lastname=last_name, email=user_email)
     else:
        form = ContactForm(request.POST)
        return render(request, 'addauthor.html', {'form': ContactForm})
else:
    return render(request, 'addauthor.html', {'form': ContactForm})

像这样的form.py文件

class ContactForm(forms.Form):
    firstname = forms.CharField(max_length=50)
    lastname =forms.CharField(max_length=50)
    email = forms.EmailField()

和像这样的HTML文件

<html>
<head>
    <title>Head</title>
</head>

<body>
    <ul>
    {{form.as_ul}}
    <input type="submit">  
    </ul>
</body>

如何在按下<input type="submit">按钮时,我的ContactForm视图将执行一些代码。有没有一种特定的方法将按钮分组到forms.py?或者还有其他方法可以做到这一点。如果有人可以帮我修改这段代码,那就太好了。

提前致谢。

1 个答案:

答案 0 :(得分:1)

只需将form.as_ulsubmit按钮括在form标记中即可:

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

另见Displaying a form using a template

希望有所帮助。