iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python学习笔记(三)-表单处理
  • 173
分享到

python学习笔记(三)-表单处理

表单学习笔记python 2023-01-31 04:01:24 173人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

表单类 默认情况下,flask-WTF能保护所有表单免受跨站请求伪造攻击(CSRF) app = Flask(__name__) # 强制性必须填写secret_key app.config['SECRET_KEY'] = 'h

表单类
默认情况下,flask-WTF能保护所有表单免受跨站请求伪造攻击(CSRF)

app = Flask(__name__)
# 强制性必须填写secret_key
app.config['SECRET_KEY'] = 'hard to guess string'

定义表单

from flask_wtf import FORM
from wtforms import StringField, SubmitField
from wtforms.validators import Required
class NameForm(Form):
    name = StringField('What is your name', validators=[DataRequired()])
    submit = SubmitField('Submit')

Form基类由Flask-WTF扩展定义,所以从flask_wtf中导入,字段和验证函数却可以直接从WTForms中导入
NameForm表单中有一个名为name的文本段和一个名为submit的提交按钮。StringField类表示属性为type=’text’的input元素。SubmitField类表示属性为type=”submit”的input元素。
效果为

WTForms支持的html标准如下所示

把表单渲染成html template/index.html

{% extends "base.html" %}
{% import "bootstrap/wtf.html" as wtf %}
{% block title %} Flasky {% endblock %}
{%  block page_content %}
    <div class="page-hearder">
        <h1>Hello,{% if name %}{{ name }}{% else %}Stranger{% endif %}</h1>
    </div>
    {{ wtf.quick_form(form) }}
{% endblock %}

视图函数中处理表单


@app.route('/', methods=['GET', 'POST'])
def index():
    form = NameForm()
    if form.validate_on_submit():
        old_name = session.get('name')
        if old_name is not None and old_name != form.name.data:
            flash('Looks like you have changed your name!')
        session['name'] = form.name.data
        return redirect(url_for('index'))
    return render_template('index.html', form=form, name=session.get('name'))

加入Flash消息,修改base.html,加入get_flashed_messages()消息处理

{% block content %}
<div class="container">
    {% for message in get_flashed_messages() %}
        <div class="alert alert-warning">
            <button type="button" class="close" data-dismiss="alert">×</button>
            {{ message }}
        </div>
    {% endfor %}
   {% block page_content %}{% endblock %}
</div>
{% endblock %}

最终效果如图所示

本文参考《Flask web开发-基于pythonWEB应用开发实战》

--结束END--

本文标题: python学习笔记(三)-表单处理

本文链接: https://www.lsjlt.com/news/187746.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python学习笔记(三)-表单处理
    表单类 默认情况下,Flask-WTF能保护所有表单免受跨站请求伪造攻击(CSRF) app = Flask(__name__) # 强制性必须填写secret_key app.config['SECRET_KEY'] = 'h...
    99+
    2023-01-31
    表单 学习笔记 python
  • Python学习笔记整理(十三)Pyth
    一、模块 模块是Pyhon最高级别的程序组织单元,它将程序代码和数据封装起来以便重用。实际的角度,模块往往对应Python程序文件。 每个文件都是一个模块,并且模块导入其他模块之后就可以使用导入模块定义的变量名。模块可以...
    99+
    2023-01-31
    学习笔记 Python Pyth
  • Python学习笔记三(Python程序
     Linux系统自带的python版本通常都比较低,可以在python官方网站(http://www.python.org/download/)下载最新源码包,然后进行升级安装。1.下载python源码包。wget http://www....
    99+
    2023-01-31
    学习笔记 程序 Python
  • PHP学习笔记:表单处理与数据验证
    在网页开发中,表单是用户与网站进行交互的重要组件之一。当用户在网站上填写表单并提交数据时,网站需要对提交的数据进行处理和验证,确保数据的准确性和安全性。本文将介绍如何使用PHP来处理表单和进行数据验证,并提供具体的代码示例。表单提交和数据预...
    99+
    2023-10-21
    数据验证 表单处理 PHP学习
  • python学习笔记---列表
    列表属于python序列中的一种,属于可变序列,支持插入、删除和替换操作。1、定义列表:2、列表中元素的操作:    获取索引的元素 l[index]:    删除列表中指定索引的元素 del(l[index]):    修改指定元素l[i...
    99+
    2023-01-31
    学习笔记 列表 python
  • NumPy 学习笔记(三)
    NumPy 数组操作:   1、修改数组形状     a、numpy.reshape(arr, newshape, order='C') 在不改变数据的条件下修改形状     b、numpy.ndarray.flat 是一个数组元素迭代器...
    99+
    2023-01-31
    学习笔记 NumPy
  • Python学习笔记9——异常处理
    就看这篇博客吧:一篇搞定所有的异常处理,讲的很详细。 异常 Python中各种异常也是类,类Exception继承自类BaseException,还有其他各种异常等等,此外,通过继承BaseException或者Exception可以自定...
    99+
    2023-01-30
    学习笔记 异常 Python
  • python学习笔记(三)—数据库篇
    一、数据库编程 数据库编程是指在应用程序中使用数据库管理系统(DBMS)进行数据存储、检索和处理的过程。数据库提供了一种结构化的方式来组织和存储数据,使得数据的管理更加高效和可靠。 1.1 关系数据库...
    99+
    2023-09-18
    python 学习 笔记
  • Python学习笔记:单例模式
    单例模式:一个类无论实例化多少次,返回的都是同一个实例,例如:a1=A(), a2=A(), a3=A(),a1、a2和a3其实都是同一个对象,即print(a1 is a2)和print(a2 is a3)都会打印True。 实现方式:...
    99+
    2023-01-30
    学习笔记 模式 Python
  • Python 学习笔记中如何处理 path?
    Python 学习笔记中如何处理 path? 在 Python 编程中,我们经常需要处理文件路径。Python 提供了许多内置模块,使我们能够轻松地处理路径和文件。在本文中,我们将介绍处理路径的方法,并提供一些示例代码。 os 模块 P...
    99+
    2023-08-02
    学习笔记 path 大数据
  • Python学习笔记
    Python介绍 Python是一种解释型、面向对象的语言。 官网:www.python.org Python环境 解释器:www.python.org/downloads 运行方式: 交互模式。在IDLE中运行。 脚本模式。文件的后缀...
    99+
    2023-01-30
    学习笔记 Python
  • Python 学习笔记
    rs=Person.objects.all() all返回的是QuerySet对象,程序并没有真的在数据库中执行SQL语句查询数据,但支持迭代,使用for循环可以获取数据。 print rs.query 会打印出原生sql语句 rs=Pe...
    99+
    2023-01-31
    学习笔记 Python
  • python学习笔记(十 三)、网络编程
    最近心情有点儿浮躁,难以静下心来     Python提供了强大的网络编程支持,很多库实现了常见的网络协议以及基于这些协议的抽象层,让你能够专注于程序的逻辑,而无需关心通过线路来传输比特的问题。 1 几个网络模块   1.1 模块sock...
    99+
    2023-01-31
    学习笔记 网络编程 python
  • 【MongoDB学习笔记3】处理Mong
    安装MongoDB后第一次启用shell登录mongo会出现一下的错误:warning: Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused用...
    99+
    2023-01-31
    学习笔记 MongoDB Mong
  • python学习笔记--趣学Python
    由反弹球和球拍构成的游戏。球会在屏幕上飞过来,玩家要用球拍把它弹回去 画布和画弹球 引入模块 #Tkinter -- Python的标准GUI库,Tk 接口,是python 内置的安装包 from tkinter import * i...
    99+
    2023-01-31
    学习笔记 python Python
  • Python学习笔记总结(四):异常处理
    一、异常基础 1、基础 try/except/else:【else是可选的】捕捉由代码中的异常并恢复,匹配except里面的错误,并执行except中定义的代码,后继续执行程序(发生异常后,由except捕捉到异常后,不...
    99+
    2023-01-31
    学习笔记 异常 Python
  • Python学习笔记整理(十七)异常处理
    一、异常基础 try/except:捕捉由代码中的异常并恢复,匹配except里面的错误,并自行except中定义的代码,后继续执行程序(发生异常后,由except捕捉到异常后,不会中断程序,继续执行try语句后面的程序) ...
    99+
    2023-01-31
    学习笔记 异常 Python
  • Python学习笔记(1)---列表和元
    什么是列表?列表是一种数据项构成的有限序列,即按照一定的线性顺序,排列而成的数据项的集合。列表的介绍一、更新列表1.元素赋值>>> a=[1,3,4,5]>>> a[1]=10 #改变a中第二个值为10&...
    99+
    2023-01-31
    学习笔记 列表 Python
  • Python Paste 学习笔记
    一、写在前面 这篇文章主要介绍了Python的Paste库的使用,学习过程中主要参考官网文档以及自己的理解,整理成笔记以便后续自己查阅。 如果转载,请保留作者信息。 邮箱地址:jpzhang.ht@gmail.com ...
    99+
    2023-01-31
    学习笔记 Python Paste
  • python OpenCV学习笔记
    目录图像翻转图像轮廓排序图像轮廓排序颜色识别基础颜色识别根据BGR获取HSV阈值编辑器图像翻转 使用Python的一个包,imutils。使用下面的指令可以安装。 pip in...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作