原文:http://www.catonlinepy.tech/
声明:原创不易,未经许可,不得转载
1. 你将学会什么
通过第三天的学习内容,你将对表单有所了解。知道使用插件来处理应用中的表单,以后遇到表单能够更熟练的使用Flask_WTF插件,并完美的将应用运行起来。今天的学习内容涉及到的代码都会托管到github上,在学习本课内容时,一定要自己尝试手敲代码,遇到问题再到猫姐的github上去查看代码,如果实在不知道如何去解决问题,可以在日志下面留言说明具体情况。
2. 表单的插件简介
WTForms作为处理Web表单的插件,是一款支持多个web框架的form组件。Flask-WTF插件对其类WTForms进行封装后以便它能够与Flask完美的结合。在第三天的内容中,我们将引入第一个Flask插件,后续也会对其它的插件进行引入。要知道,插件用得好,可以使web的开发的过程快到飞起。
大家需知道,所有Flask插件都是属于Python的三方包,因此都可以使用pip来进行安装。照旧,我们先进入miao_venv的虚拟环境目录中,将虚拟环境进行激活,然后安装Flask_WTF插件。安装步骤如下:
# 进入到虚拟环境目录,激活虚拟环境
maojie@Thinkpad:~/flask-plan/$ source miao_venv/bin/activate
# 再安装Flask_WTF插件
(miao_venv) maojie@Thinkpad:~/flask-plan$ pip install Flask_WTF
3. 表单插件的使用
今天的代码组织结构如下:
# 使用tree命令查看
(miao_venv) maojie@Thinkpad:~/flask-plan/flask-course-primary/day3$ tree
.
├── form_demo
│ ├── __init__.py
│ ├── routes.py
│ └── templates
│ ├── form.html
│ └── layout.html
└── run.py
现在猫姐来创建今天的课程目录,步骤如下:
# 在flask-course-primary目录下创建第三天的课程day3目录
(miao_venv) maojie@Thinkpad:~/flask-plan/flask-course-primary$ mkdir day3
# 进入day3目录
(miao_venv) maojie@Thinkpad:~/flask-plan/flask-course-primary$ cd day3
# 新建form_demo
(miao_venv) maojie@Thinkpad:~/flask-plan/flask-course-primary/day3$ mkdir form_demo
# 进入到form_demo包
(miao_venv) maojie@Thinkpad:~/flask-plan/flask-course-primary/day3$ cd form_demo/
# 在form_demo包中新建__init__.py文件
(miao_venv) maojie@Thinkpad:~/flask-plan/flask-course-primary/day3/form_demo$ touch __init__.py
# 在form_demo新建routes.py路由文件
(miao_venv) maojie@Thinkpad:~/flask-plan/flask-course-primary/day3/form_demo$ touch routes.py
# 在day3目录下新建run.py文件
(miao_venv) maojie@Thinkpad:~/flask-plan/flask-course-primary/day3/$ touch run.py
上面将课程目录创建好后,现在我们开始表单的创建。在创建表单之前,猫姐先在__init__.py文件中对Flask_WTF进行配置,如下所