1、优点
1、模板中表单的渲染
2、数据的验证工作,某一些输入不合法也不会丢失已经输入的数据。
3、还可以定制更复杂的验证工作,如果提供了10个输入框,必须必须要输入其中两个以上,在 forms.py 中都很容易实现
2、创建一个tools APP 记得在setting.py中注册
3、在tools文件中新建一个forms.py文件
from django import forms
class AddForm(forms.Form):
a = forms.IntegerField()
b = forms.IntegerField()
4、在views.py中书写index函数
# 引入我们创建的表单类
from .forms import AddFrom
def index(request):
if request.method == 'POST':#当提交表单时
form = AddFrom(request.POST)
if form.is_valid(): # 如果提交的数据合法
a = form.cleaned_data['a']
b = form.cleaned_data['b']
return HttpResponse(str(int(a) + int(b)))
else: #当正常访问的时候
form = AddFrom()
return render(request, 'index.html',{'form': form})
5、修改index.html
<form method='post'>
{% csrf_token %}
{{ form }} <!-- 这个是 CSRF 认证,如果是 POST 方法就必须有 -->
<input type="submit" value="提交">
</form>
6、在对应的urls.py中添加记录
from django.conf.urls import url
from django.contrib import admin
from tools import views as tools_views
urlpatterns = [
url(r'^$', tools_views.index, name='home'),
url(r'^admin/', admin.site.urls),
]