Flask中的flash

2020-06-19 16:00:43 浏览数 (1)

一.简单的使用

代码语言:javascript复制
- 必须要设置秘钥因为flash是基于session
-设置:flash('aaa')
-取值:get_flashed_message()  
#从源码我们可以看出get_flashed_message每次获取后都会进行pop删除所以在页面刷新或者跳转值都会消失
#如果页面没有发送跳转或者刷新,之后再调用get_flashed_message()  依然可以去到因为源码中以及对于查询对象进行了赋值
-假设在a页面操作出错,跳转到b页面,在b页面显示a页面的错误信息

二. 详细介绍

代码语言:javascript复制
'''
1 设置flash
    1.1 flash("要传递的值",category="分类的名称"),如果不传默认是message
    本质:session['_flash']
2取flash设置的值我们用get_flashed_messages
 2.1 get_flashed_messages(with_categories=False, category_filter=()),
    2.1.1如果不传递 category_filter,取出上面存储的所有分类传递的值
    2.1.2如果不传with_categories就只取值,不取分类的名字,如果传值,就获取 分类名和分类值
    
3 这个flash只能一个视图函数中取,只要有一个视图函数取过了,那其他视图函数就不能获取
    本质:session.pop("_flash")
    3.1 但是在同一个视图函数里面可以无限的取值
   
'''

0 人点赞