热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何实现Flask中的表单和输入验证功能

本篇文章给大家分享的是有关如何实现Flask中的表单和输入验证功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所

本篇文章给大家分享的是有关如何实现Flask中的表单和输入验证功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

1. 什么是Flask-WTF?

flask-wtf是一个表单集成插件,包括CSRF,文件上传和Recaptcha集成等。

2. 如何使用Flask-WTF?

在命令行中执行pip install flask-wtf进行安装:

如何实现Flask中的表单和输入验证功能

首先接着上一章内容,在Flask_Blog文件夹中新建一个文件forms.py:

如何实现Flask中的表单和输入验证功能

想要使用这个表单,我们需要为修改flaskblog.py,添加一个密钥,先随机生成一个密钥:

Python 3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)] on win32Type "help", "copyright", "credits" or "license" for more information.>>> import secrets>>> secrets.token_hex(16)'037a34afcf9ceba959865d80f69e2d6f'>>>

接着修改flaskblog.py:

如何实现Flask中的表单和输入验证功能

然后我们添加表单的注册和登录方法,修改flaskblog.py:

如何实现Flask中的表单和输入验证功能

在文件夹templates中新建一个register.html注册页面,内容为:

如何实现Flask中的表单和输入验证功能

在文件夹templates中新建一个login.html登录页面,内容为:

如何实现Flask中的表单和输入验证功能

调整修改文件夹templates中layout.html,导航路径使用url_for(),添加登录和注册成功后的提示信息代码:

如何实现Flask中的表单和输入验证功能

然后我们在文件夹Flask_Blog打开命令行cmd,运行python falskblog.py:

如何实现Flask中的表单和输入验证功能

访问地址http://127.0.0.1:5000,点击导航注册链接,输入不符合验证规则的测试数据(出现相应的提示信息,这里默认是英文提示,可以改成中文提示,需修改代码,大家可以自己试试):

如何实现Flask中的表单和输入验证功能

输入符合验证规则的数据之后,提示创建账户:

如何实现Flask中的表单和输入验证功能

点击导航中登录连接,输入和代码中不一样的邮箱和密码:

如何实现Flask中的表单和输入验证功能

输入正确的用户名和密码:

如何实现Flask中的表单和输入验证功能

以上就是如何实现Flask中的表单和输入验证功能,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程笔记行业资讯频道。


推荐阅读
  • 本文分享了作者在使用LaTeX过程中的几点心得,涵盖了从文档编辑、代码高亮、图形绘制到3D模型展示等多个方面的内容。适合希望深入了解LaTeX高级功能的用户。 ... [详细]
  • 本文由公众号【数智物语】(ID: decision_engine)发布,关注获取更多干货。文章探讨了从数据收集到清洗、建模及可视化的全过程,介绍了41款实用工具,旨在帮助数据科学家和分析师提升工作效率。 ... [详细]
  • 【MySQL】frm文件解析
    官网说明:http:dev.mysql.comdocinternalsenfrm-file-format.htmlfrm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果 ... [详细]
  • Python中调用Java代码的方法与实践
    本文探讨了如何在Python环境中集成并调用Java代码,通过具体的步骤和示例展示了这一过程的技术细节。适合对跨语言编程感兴趣的开发者阅读。 ... [详细]
  • 深入解析 Zend Guard 4 功能与配置
    本文旨在通过图文并茂的方式详细介绍 Zend Guard 4 的核心功能及其配置方法,特别适合英文阅读能力有限的技术人员。文中不仅提供了详细的步骤说明,还附带了实际操作中的注意事项,帮助读者更好地理解和应用这一工具。 ... [详细]
  • 帝国cms各数据表有什么用
    CMS教程|帝国CMS帝国cmsCMS教程-帝国CMS精易编程助手源码,ubuntu桥接设置,500错误是tomcat吗,爬虫c原理,php会话包括什么,营销seo关键词优化一般多 ... [详细]
  • 本文详细介绍了在Mac操作系统中使用Python连接MySQL数据库的方法,包括常见的错误处理及解决方案。 ... [详细]
  • Python游戏开发实战:外星人入侵项目详解
    本文详细介绍了使用Python进行《外星人入侵》游戏开发的全过程,包括环境搭建、游戏逻辑设计及代码实现等关键步骤,适合对游戏开发感兴趣的朋友参考。 ... [详细]
  • BeautifulSoup4 是一个功能强大的HTML和XML解析库,它能够帮助开发者轻松地从网页中提取信息。本文将介绍BeautifulSoup4的基本功能、安装方法、与其他解析工具的对比以及简单的使用示例。 ... [详细]
  • 本文介绍了如何在Windows操作系统中安装FFTW库,并详细说明了使用Visual Studio 2010进行4096点快速傅里叶变换(FFT)的步骤。包括下载预编译文件、生成库文件以及配置环境等关键环节。 ... [详细]
  • 本文详细介绍了Oracle RMAN中的增量备份机制,重点解析了差异增量和累积增量备份的概念及其在不同Oracle版本中的实现。通过对比两种备份方式的特点,帮助读者选择合适的备份策略。 ... [详细]
  • 本文详细介绍了Golang中string类型的内部结构及其特性,包括字符串的定义、表示方式、数据结构以及相关的操作方法,如字符串拼接和类型转换等。 ... [详细]
  • 2023年1月28日网络安全热点
    涵盖最新的网络安全动态,包括OpenSSH和WordPress的安全更新、VirtualBox提权漏洞、以及谷歌推出的新证书验证机制等内容。 ... [详细]
  • ImtryingtoaccessarequestfromanHTMLform,andsenditasamail,butIgetamailwithaval ... [详细]
  • 原标题:django中ImageField的使用---2020.12.19ImageField的使用笔记今天完善作业写的订单系统,主要是给每一个菜品增加 ... [详细]
author-avatar
Openset
Less is more!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有