Flask表单验证
学习内容:①判断请求方式(request.method)
from flask import Flask,render_template,request app = Flask(__name__) @app.route('/',methods=['GET','POST'])
def hello_world():
# 判断请求方式
if request.method=='POST':
return render_template('index.html') if __name__ == '__main__':
app.run()
②获取表单信息(request.form.get())
from flask import Flask,render_template,request app = Flask(__name__) @app.route('/',methods=['GET','POST'])
def hello_world():
# 判断请求方式
if request.method=='POST':
#获取请求参数
username=request.form.get('username')
password=request.form.get('password')
password2=request.form.get('password2')
print('username:',username)
print('password:',password)
print('password2:',password2)
return 'success'
return render_template('index.html') if __name__ == '__main__':
app.run()
③判断表但是否填写完整(if not all())
from flask import Flask,render_template,request app = Flask(__name__) @app.route('/',methods=['GET','POST'])
def hello_world():
# 判断请求方式
if request.method=='POST':
#获取请求参数
username=request.form.get('username')
password=request.form.get('password')
password2=request.form.get('password2')
print('username:',username)
print('password:',password)
print('password2:',password2)
# 判断表但是否填完整
if not all([username,password,password2]):
print("表单未填完整")
return 'success'
return render_template('index.html') if __name__ == '__main__':
app.run()
④判断两次输入密码是否一致
from flask import Flask,render_template,request app = Flask(__name__) @app.route('/',methods=['GET','POST'])
def hello_world():
# 判断请求方式
if request.method=='POST':
#获取请求参数
username=request.form.get('username')
password=request.form.get('password')
password2=request.form.get('password2')
print('username:',username)
print('password:',password)
print('password2:',password2)
# 判断表但是否填完整
if not all([username,password,password2]):
print("表单未填完整")
# 判断两次密码是否一致
if password!=password2:
print("两次密码不一致,请重新输入!")
return 'success'
return render_template('index.html') if __name__ == '__main__':
app.run()
完整代码:
app.py:
from flask import Flask,render_template,request app = Flask(__name__) @app.route('/',methods=['GET','POST'])
def hello_world():
# 判断请求方式
if request.method=='POST':
#获取请求参数
username=request.form.get('username')
password=request.form.get('password')
password2=request.form.get('password2')
print('username:',username)
print('password:',password)
print('password2:',password2)
# 判断表但是否填完整
if not all([username,password,password2]):
print("表单未填完整")
# 判断两次密码是否一致
if password!=password2:
print("两次密码不一致,请重新输入!")
return 'success'
return render_template('index.html') if __name__ == '__main__':
app.run()
index.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form method="post" action="/">
<label> 账号:</label><input type="text" name="username"><br>
<label> 密码:</label><input type="password" name="password"><br>
<label> 确认密码:</label><input type="password" name="password2"><br>
<input type="submit" name="submit" value="登录">
<input type="reset" name="reset" value="重置">
</form>
</body>
</html>
运行截图:
Flask表单验证的更多相关文章
- flask框架(八)—自定义命令flask-script、多app应用、wtforms表单验证、SQLAIchemy
自定义命令flask-script 用于实现类似于django中 python3 manage.py runserver ...类似的命令,用命令行启动项目 首先安装:pip3 install fla ...
- flask提交表单验证不通过,以及CSRF攻击原理
学习表单的问题1. 提交表单时怎么都无法验证通过 记录一下,自己的学习bug,主要是因为在模板中书写渲染的语句时,把CSRF的字段名写错了. 因为在模板中书写一些语句是没有提示的,自己手动敲代码容易出 ...
- Django实现表单验证、CSRF、cookie和session、缓存、数据库多表操作(双下划綫)
通常验证用户输入是否合法的话,是前端js和后端共同验证的,这是因为前端js是可以被禁用的,假如被禁用了,那就没法用js实现验证合法与否了,也就是即使用户输入的不合法,但是也没提示,用户也不知道怎么输入 ...
- flask表单,orm,csrf
flask表单是flask中最基本的功能. 它是负责HTML页面中数据采集的部分,它由三部分组成:表单标签,表单域,表单按钮组成,通过表单用户输入的数据提交给服务器. flask表单封装了WTForm ...
- Flask10 登录模块、表单框架、表单渲染、表单验证、bookie、请求之前钩子、g对象、编写装饰器
from flask import Flask from flask import request from flask import render_template from flask_wtf i ...
- Form表单验证组件
Tyrion是一个基于Python实现的支持多个WEB框架的Form表单验证组件,其完美的支持Tornado.Django.Flask.Bottle Web框架.Tyrion主要有两大重要动能: 表单 ...
- 五十二:WTForms表单验证之基本使用
作用:1.做表单验证,把用户提交的数据验证是否合法2.做模板渲染 安装:pip install wtforms 表单验证1.自定义一个表单类,继承wtforms.Form2.定义好需要验证的字段,字段 ...
- 测开之路一百四十八:WTForms表单验证
使用WTForms表单验证,可以在数据建模时就设置验证信息和错误提示 创建模型时,设置验证内容,如必填.格式.长度 from flask_wtf import Formfrom wtforms imp ...
- WTF表单验证
WTF表单验证可分为3个步骤: ①导入wtf扩展提供的表单验证器.(from wtforms.validators import DataRequired,EqualTo) ②定义表单类 # 定义表单 ...
随机推荐
- Pycharm使用 Ctrl+滚轮 调整字体大小
首先,打开File中的Settings 然后,点开Editor内的General 最后,在3 指向的位置勾选:Change font size (Zoom)with Ctrl+Mouse Whel 这 ...
- H5: 表单验证失败的提示语
前言 前端的童鞋在写页面时, 都不可避免的总会踩到表单验证这个坑. 这时候, 我们就要跪了, 因为要写一堆js来检查. 但是自从H5出现后, 很多常见的表达验证, 它都已经帮我们实现了, 让我 ...
- 分享一个react 图片上传组件 支持OSS 七牛云
react-uplod-img 是一个基于 React antd组件的图片上传组件 支持oss qiniu等服务端自定义获取签名,批量上传, 预览, 删除, 排序等功能 需要 react 版本大于 v ...
- GoF设计模式-23大设计模式(表格)-程序员必备+必背
在GoF经典著作<设计模式:可复用面向对象软件的基础>中一共描述了23种设计模式. <Design Patterns:Elements of Reusable Object-Orie ...
- vue配置请求转发解决跨域问题
通过nodejs的请求转发到后台,前端地址:http://localhost:8080 后端地址:http://localhost:8081 vue.config.js内容如下: let prox ...
- Mybatis的简介+简单实现增删改查案例
@ 目录 总结内容 1. 基本概念 2. Mybatis的使用 需求 配置文件简介 总结 总结内容 1. 基本概念 Mybatis是一款优秀的持久层框架,它支持定制化SQL.存储过程以及高级映射.My ...
- Makefile 简介
一.引例: #Makefile objects=test1.o test2.o main:$(objects) gcc -o main $(objects) clean: rm main $(obje ...
- python---两个栈实现一个队列
class Solution: """两个栈实现一个队列""" def __init__(self): # 接收栈 self.accept_ ...
- JDK1.8.0_181的无限制强度加密策略文件变动(转载)
JDK1.8.0_181的无限制强度加密策略文件变动 原文地址 https://my.oschina.net/my1313677/blog/3109613 作者 葉者 日常记录 2019/09/23 ...
- JavaScript基础第03天笔记
JavaScript基础第03天笔记 1 - 循环 1.1 for循环 语法结构 for(初始化变量; 条件表达式; 操作表达式 ){ //循环体 } 名称 作用 初始化变量 通常被用于初始化一个计数 ...