第 6 章 表单
表单是一个网站与用户交互必不可少的元素。表单中可以提供文本输入框、单选按钮、复选框、按钮等元素供用户提交数据。在 Flask 项目中,表单除了可以表示传统的 HTML 标签外,还有验证数据的作用。数据被发送到服务器后,服务器为了防止不法分子绕过前端限制提交一些非法数据,需要对提交上来的数据进行验证,验证合法后才进行后续的操作。要实现表单的验证功能,我们需要借助第三方插件 Flask-WTF,Flask-WTF 是对 WTForms 库的封装,让 WTForms 库在 Flask 项目中更方便地被使用,不过 Flask-WTF 提供的功能比较有限,大部分功能是直接从 WTForms 中直接导入的。WTForms 的功能主要有两个,分别是验证数据和在模板中渲染表单 HTML 标签。当然,WTForms 还包括一些其他功能,如 CSRF 保护、文件上传等。安装 Flask-WTF 的同时默认也会安装 WTForms,安装命令如下。
pip install flask-wtf
安装完 Flask-WTF 后,我们用 PyCharm Professional 版创建一个名叫 formlearn 的项目,读者可以通过本项目查看到本章所讲内容的演示代码。