我有一个Flask应用程序,使用Flask登录来管理用户身份验证。主路由('/')需要登录,但是我不希望它刷新为此特定路由定义的错误消息。我希望它的行为,它应该闪烁的错误信息,其他路线,但不是这一条。这是我的initpy中的一个片段
login_manager = LoginManager()
login_manager.init_app(app)
login_manager.login_view = 'login'
login_manager.login_message = 'You Must Login to Access This Page!'
login_manager.login_message_category = 'error'
以下是我的视图.py在
^{pr2}$如您所见,我有主路由密码保护,由于登录管理器的设置,它正在闪烁消息“您必须登录才能访问此页面!”当然,我会在登录模板上显示这些错误。但是,我如何确保除了主('/')路由之外的每个路由都能相应地执行此操作?我已经看过文件了,但我看不出有什么可以做的。在
我可以简单地覆盖登录吗_manager.login_消息在那个特定的路线上没有?如果是这样,如何恰当地调用、覆盖登录管理器,然后再将其更改回原来的位置?在
最后,我所做的只是将Flask Login在这些情况下使用的GET变量“next”的值从视图传递给模板。然后选择不显示闪烁,如果它与我不想显示的路线相匹配。在
在视图中:
在模板中:
^{pr2}$可能有一种更简单的方法来丢弃视图中的闪光灯,但您仍然需要确保您有一些东西在做get_flashed_messages(),否则当您实际显示flash时,它们会在某个时刻堆积起来。在
相关问题 更多 >
编程相关推荐