【发布时间】:2019-12-31 00:59:15
【问题描述】:
我想在每个视图的代码执行之前使用 get_flashed_messages() 清理会话闪存。那是因为 flash 在 session 中是持久的,这是非常不幸的(如果 flashed 消息没有在身份验证过程中打印,例如,它们会在使用布局的第一页中一次全部打印出来)。
所以,我想在应用程序中的每个视图之前运行代码来清理会话闪烁的消息。
诸如 before_request 或 before_app_request 之类的函数不会正确执行,因为它们在请求期间会执行很多次(它们会针对正在上传的每个模板或静态文件执行),这会擦除视图代码中闪烁的消息(我只想在当前视图开始运行之前从其他视图中删除持久化的消息)。
简单地说,我希望一些代码在调用每个视图函数之前运行一次,并且只运行一次。
这在 Flask 中可行吗?
【问题讨论】: