python web开发-flask中消息闪现flash的应用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python web开发-flask中消息闪现flash的应用相关的知识,希望对你有一定的参考价值。

Flash中的消息闪现,在官方的解释是用来给用户做出反馈。不过实际上这个功能只是一个记录消息的方法,在某一个请求中记录消息,在下一个请求中获取消息,然后做相应的处理,也就是说flask只存在于两个相邻的请求中“闪现”,第三次请求就不存在这个flash了。

下面我们用一个例子来说明一个是如何“闪”的。

首先引入flash和get_flashed_message方法

from flask import Flask,url_for,render_template,request,make_response,session, \
flash,get_flashed_messages

然后我们定义两个方法,一个用于记录flash,一个用于显示flash。

@app.route("/addflash")
def addFlash():
???? flash("bling bling")
???? return "added a flash"

@app.route("/getFlash/")
def getFlash():
???? msgs = get_flashed_messages()
???? msgStr = ""
????
for msg in msgs:
???????? msgStr += msg+","
????
return msgStr

然后我们运行程序,先访问/addflash这个地址,效果如下:

技术分享图片

按代码的逻辑,此时应该是记录了一个bling bling的flash,然后我们在/getFlash中获取这个flash。

技术分享图片

可以看到,我们获取到了bling bling这个flash.按上面所说,这个flash只存在于两次相临的请求中,那就是说,如果我们刷新一个/getFlash,重新发起一个请求的时候,bling bling这个flash应该是获取不到,下面我们刷新页面来做一下验证,刷新后效果如下:

技术分享图片

页面一片空白,说明bling bling这个flash的确是没有被本次请求获取到。

对于flash还有一个type的参数,可以用来处理不同类型的flash,具体的应用可以参考官方文档:

http://docs.jinkan.org/docs/flask/patterns/flashing.html#message-flashing-pattern

再深入一层,我们进到flash的定义中会发现,其实flash底层是用session实现的。


更多文章关注微信公众号“挨踢学霸”

以上是关于python web开发-flask中消息闪现flash的应用的主要内容,如果未能解决你的问题,请参考以下文章

Flask消息闪现

Flask 学习-65.消息闪现 flash

雷林鹏分享:Flask消息闪现

Flask框架从入门到精通之消息闪现和日志记录(二十一)

Flask框架从入门到精通之消息闪现和日志记录(二十一)

Flask框架从入门到精通之消息闪现和日志记录(二十一)