Flask Flash闪现
Flash介绍以及工作方式
- 介绍:
- flash :闪现
- 一个好的应用和用户界面都需要良好的反馈。
- 如果用户得不到足够的反馈,那么应用 最终会被用户唾弃。
- Flask 的闪现系统提供了一个良好的反馈方式。
- 工作方式:
- 基本工作方式是:
- 在且只在下一个请求中访问上一个请求结束时记录的消息。
- 注意: 浏览器会限制 cookie 的大小,有时候网络服务器也会。
- 这样如果消息比会话 cookie 大的话,那么会导致消息闪现静默失败
flash中添加消息
- flash()
- 该函数是将需要消息存入flash等待下次请求进来时的获取
- 在后台视图中想要使用 flash需要导入:
- from Flask import flash
- flash() 中的两个参数:
- message:
- 添加到flash中的数据
- category:
- 消息的类别,默认为 message
- flash 源码:
- def flash(message, category='message'):
- # 获取session中的 "_flashes" 的列表,若没有赋值为空列表
- flashes = session.get('_flashes', [])
- # 将需要添加的message 与category组成元组放入列表flashes
- flashes.append((category, message))
- # 将flashes列表添加到session中
- session['_flashes'] = flashes
- # 当响应时,将该session添加到用户浏览器
- message_flashed.send(current_app._get_current_object(),
- message=message, category=category)
取出flash中的消息
- get_flashed_messages()
- 获取存在flash中的消息,并且删除flash中的这个消息;
- 在后台视图中想要使用 flash需要导入
- from flask import get_flashed_messages
- 母板中直接调用即可;
- {% with messages = get_flashed_messages() %}
- {{ messages }}
- {% endwith %}
- 被取到后,flash中的数据将被 pop掉
- 源码:
- def get_flashed_messages(with_categories=False, category_filter=[]):
- # 第一次请求进来时,去获取flashes列表,但是因为没有加入所以为空列表
- flashes = _request_ctx_stack.top.flashes
- if flashes is None:
- _request_ctx_stack.top.flashes = flashes = session.pop('_flashes') \
- if '_flashes' in session else []
- if category_filter:
- flashes = list(filter(lambda f: f[0] in category_filter, flashes))
- if not with_categories:
- return [x[1] for x in flashes]
- return flashes
Flask Flash闪现的更多相关文章
- Flask消息闪现
目录 Flask消息闪现 简单的例子 闪现消息的类别 过滤闪现消息 Message Flashing 参考 Flask消息闪现 一个好的应用和用户界面都需要良好的反馈.如果用户得不到足够的反馈,那么应 ...
- Flask的闪现(message) 请求扩展 中间件 蓝图
补充:一个编程思路 需求:做一些邮件短信微信的消息通知,比如账单告警之类的:比如数据库操作,数据库种类繁多:缓存的选择比如redis/memcache,诸如此类需要进行选择配置,如果我们单纯的用函数去 ...
- Flask flush 闪现
闪现 要用必须导入 flash , get_flashed_messages flash 用于存闪现的值.他有两个参数,1 messsage,用来存储信息 2 category ,用于给信息分类,该参 ...
- 19,flask消息闪现-flash
Flash消息 请求完成后给用户的提醒消息,flask的核心特性, flash函数实现效果 视图函数中调用flash()方法 html中要使用get_flashed_messages() 后端代码: ...
- flask 之cbv ,flash闪现,Flask_Session,WTForms - MoudelForm
1.CBV : from flask import views class LoginView(views.MethodView): def get(self): return def ...
- Flask -- 消息闪现、错误处理
flash 可以在任何需要的地方添加,类似于print from flask import flash @app.route('/') def index(): flash('You are in h ...
- flask flash消息
请求完成,让用户知道状态发生了变化,可以使用flash确认消息 示例: xx.py from flask import Flask,render_template,request,redirect,u ...
- 【Flask】学习笔记(一)入门
Flask 入门基础 Flask是一个轻量级的后台框架,用Flask作为Web框架的公司有Netfix,Reddit等,国内豆瓣,果壳等.使用flask的公司列表.Flask 有主要的两个依赖,一个是 ...
- Flask框架flash消息闪现学习与优化符合闪现之名
Flask的flash 第一次知道Flask有flash这个功能时,听这名字就觉得高端,消息闪现-是跳刀blink闪烁躲技能的top10操作吗?可结果让我好失望,哪里有什么闪现的效果,不过是平常的消息 ...
随机推荐
- PageUtil
package cn.com.qmhd.oto.common; import java.io.Serializable; import java.util.List; import org.sprin ...
- nginx index.html
[root@web03 nginx]# ls -l|grep -v temptotal 36drwxr-xr-x 2 root root 4096 Jun 7 15:36 confdrwxr-xr-x ...
- Vue组件通信之Bus
关于组件通信我相信小伙伴们肯定也都很熟悉,就不多说了,对组件通信还不熟悉的小伙伴移步这里. 在vue2.0中 $dispatch 和 $broadcast 已经被弃用.官方文档中给出的解释是: 因为基 ...
- Python实现机器人语音聊天
一.前言说明 1.功能简述 登录后进入聊天界面,如果服务器都在同一个地址,则都进入同一个房间 进入/离开/发消息同一房间用户都可以看到,输入“tuling”或“chatbot”可以切换为和Tuling ...
- 经典C语言编程注意点
C/C++程序员应聘试题剖析 分中的2分.读者可从本文看到strcpy函数从2分到10分解答的例子,看看自己属于什么样的层次.此外,还有一些面试题考查面试者敏捷的思维能力. 分析这些面试题,本身包含很 ...
- [MST] Defining Asynchronous Processes Using Flow
In real life scenarios, many operations on our data are asynchronous. For example, because additiona ...
- When you are old (当你老了)
- William Butler Yeats --威廉·巴特勒·叶芝 When you are old and grey and full of sleep: 当你老了,头发花白,睡意沉沉. And ...
- 图论之堆优化的Prim
本题模板,最小生成树,洛谷P3366 题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出orz 输入输出格式 输入格式: 第一行包含两个整数N.M,表示该图共有N个结点和M条无向边 ...
- react --- React中state和props分别是什么?
props React的核心思想就是组件化思想,页面会被切分成一些独立的.可复用的组件. 组件从概念上看就是一个函数,可以接受一个参数作为输入值,这个参数就是props,所以可以把props理解为从外 ...
- Pickling
Pickle translates almost any type of object into a string. pickle.dumps takes an object as a paramet ...