Django 表单

Django固定表单的用法

Django表单的优点

1、模板中表单的渲染
2、数据的验证工作,某一些输入不合法也不会丢失已经输入的数据。
3、还可以定制更复杂的验证工作,如果提供了10个输入框,必须必须要输入其中两个以上,在 forms.py 中都很容易实现

创建APP

创建一个tools APP 记得在setting.py中注册

创建 forms.py

在tools文件中新建一个forms.py文件

1
2
3
4
5
from django import forms

class AddForm(forms.Form):
a = forms.IntegerField()
b = forms.IntegerField()

index函数

在views.py中书写index函数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 引入我们创建的表单类
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})

修改index.html

1
2
3
4
5
6

<form method='post'>
{% csrf_token %}
{{ form }} <!-- 这个是 CSRF 认证,如果是 POST 方法就必须有 -->
<input type="submit" value="提交">
</form>

在对应的urls.py中添加记录

1
2
3
4
5
6
7
8
9
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),
]


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!