表单系统的核心部分是Django 的Form 类;Form 类描述一个表单并决定它如何工作和展现。
就像模型类的属性映射到数据库的字段一样,表单类的字段会映射到HTML 的表单元素(或其它表单元素)
1,在form.py中定义表单类
from django import forms
class NameForm(forms.Form):
your_name = forms.CharField(label='Your name', max_length=100)
2,在views.py中实例化表单与处理表单数据
from django.shortcuts import render
from django.http import HttpResponseRedirect
from .forms import NameForm
def get_name(request):
# 如果这是一个POST请求,我们就需要处理表单数据
if request.method == 'POST':
# 创建一个表单实例,并且使用请求中的数据填充表单
form = NameForm(request.POST)
# 检查数据有效性:
if form.is_valid():
# 在需要时,可以在form.cleaned_date中处理数据
# ...
# 重定向到一个新的URL:
return HttpResponseRedirect('/thanks/')
# 如果是GET或者其它请求方法,我们将创建一个空的表单。
else:
form = NameForm()
return render(request, 'name.html', {'form': form})
3,在html文件中使用表单模板
注:为了上传文件,需要确保
输出选项:必须自己提供