Flask框架学习笔记之使用Flask实现表单开发详解


Posted in Python onAugust 12, 2019

本文实例讲述了使用Flask实现表单开发。分享给大家供大家参考,具体如下:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
  <div align="center">
  <h1>User Management</h1>
  <form method="post">
    <input type="text" name="username" placeholder="username" />
    <br>
    <input type="password" name="password" placeholder="password" />
    <br>
    <input type="submit" value="Submit">
    <input type="reset" value="Reset">
  </form>
  </div>
</body>
</html>

使用html实现的表单:

Flask框架学习笔记之使用Flask实现表单开发详解

用flask实现相同功能的表单:

# -*- coding:utf-8 -*-
from flask import Flask, request, render_template, redirect
from wtforms import Form, TextField, PasswordField, validators
app = Flask(__name__)
class LoginForm(Form):
  # validators指定一个由验证函数组成的列表
  # 在接受用户提交的数据之前验证数据
  # 验证函数Required()确保提交的字段不为空
  username = TextField("username", [validators.Required()])
  password = PasswordField("password", [validators.Required()])
# 定义user路由
@app.route("/user", methods=['GET', 'POST'])
def login():
  myForm = LoginForm(request.form)
  if request.method == 'POST':
    # username = request.form['username']使用request获取数据
    # password = request.form['password']
    # 也可以使用类实例里的表单方法来获取相应的数据
    # validate来验证输入的表单数据是否有效
    if myForm.username.data == "loli" and myForm.password.data == "520" and myForm.validate():
      return redirect("http://www.baidu.com")
    else:
      message = "Login Failed"
      return render_template("form1.html", message=message, form=myForm)
  return render_template("form1.html", form=myForm)
if __name__ == '__main__':
  app.run()

form1模板:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
  <div align="center">
  <h1>User Management</h1>
  <form method="post">
    {% if message %}
      {{ message }}
    {% endif %}
    <br>
    {{ form.username }}
    <br>
    {{ form.password }}
    <br>
    <input type="submit" value="Submit">
    <input type="reset" value="Reset">
  </form>
  </div>
</body>
</html>

Flask框架学习笔记之使用Flask实现表单开发详解

一样的效果图。

在WTForm3.0中Textfield被移除,使用Stringfield代替。

WTForm主要在flask中用于验证表单。

参考官方文档:http://dormousehole.readthedocs.io/en/latest/patterns/wtforms.html

希望本文所述对大家基于flask框架的Python程序设计有所帮助。

Python 相关文章推荐
python下如何让web元素的生成更简单的分析
Jul 17 Python
利用Python读取文件的四种不同方法比对
May 18 Python
Python2和Python3中print的用法示例总结
Oct 25 Python
Pycharm设置界面全黑的方法
May 23 Python
一百行python代码将图片转成字符画
Feb 19 Python
pygame游戏之旅 载入小车图片、更新窗口
Nov 20 Python
django搭建项目配置环境和创建表过程详解
Jul 22 Python
python运用sklearn实现KNN分类算法
Oct 16 Python
Python如何优雅获取本机IP方法
Nov 10 Python
对Matlab中共轭、转置和共轭装置的区别说明
May 11 Python
Python函数必须先定义,后调用说明(函数调用函数例外)
Jun 02 Python
5分钟快速掌握Python定时任务框架的实现
Jan 26 Python
Flask框架学习笔记之表单基础介绍与表单提交方式
Aug 12 #Python
python内存管理机制原理详解
Aug 12 #Python
Flask框架学习笔记之路由和反向路由详解【图文与实例】
Aug 12 #Python
python实现图片压缩代码实例
Aug 12 #Python
django与vue的完美结合_实现前后端的分离开发之后在整合的方法
Aug 12 #Python
一行Python代码过滤标点符号等特殊字符
Aug 12 #Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
Aug 12 #Python
You might like
PHP常用代码
2006/11/23 PHP
如何写php程序?
2006/12/08 PHP
PHP 无限分类三种方式 非函数的递归调用!
2011/08/26 PHP
PHP删除数组中的特定元素的代码
2012/06/28 PHP
php源代码安装常见错误与解决办法分享
2013/05/28 PHP
浅析PHP原理之变量分离/引用(Variables Separation)
2013/08/09 PHP
Js 冒泡事件阻止实现代码
2013/01/27 Javascript
js中哈希表的几种用法总结
2014/01/28 Javascript
JavaScript中对象属性的添加和删除示例
2014/05/12 Javascript
基于html5和nodejs相结合实现websocket即使通讯
2015/11/19 NodeJs
分步解析JavaScript实现tab选项卡自动切换功能
2016/01/25 Javascript
Angularjs过滤器使用详解
2016/05/25 Javascript
JavaScript Canvas绘制圆形时钟效果
2020/08/20 Javascript
用户管理的设计_jquery的ajax实现二级联动效果
2017/07/13 jQuery
如何把vuejs打包出来的文件整合到springboot里
2018/07/26 Javascript
JS实现HTML页面中动态显示当前时间完整示例
2018/07/30 Javascript
微信小程序中遇到的iOS兼容性问题小结
2018/11/14 Javascript
json数据格式常见操作示例
2019/06/13 Javascript
用jQuery实现抽奖程序
2020/04/12 jQuery
import的本质解析
2017/10/30 Python
python入门前的第一课 python怎样入门
2018/03/06 Python
python实现五子棋小游戏
2020/03/25 Python
如何基于pythonnet调用halcon脚本
2020/01/20 Python
python如何安装下载后的模块
2020/07/03 Python
python中加背景音乐如何操作
2020/07/19 Python
台湾旅游网站:雄狮旅游网
2017/08/16 全球购物
运动会开幕式邀请函
2014/01/22 职场文书
大学应届生的自我评价
2014/03/06 职场文书
永远跟党走演讲稿
2014/09/12 职场文书
初中学习计划书范文
2014/09/15 职场文书
教学督导岗位职责
2015/04/10 职场文书
应急管理工作总结2015
2015/05/04 职场文书
军事博物馆观后感
2015/06/05 职场文书
2015年美容师个人工作总结
2015/10/14 职场文书
观看《筑梦中国》纪录片心得体会
2016/01/18 职场文书
清空 Oracle 安装记录并重新安装
2022/04/26 Oracle