gpt4 book ai didi

python - “local to a blueprint”是什么意思?

转载 作者:行者123 更新时间:2023-12-03 08:26:39 26 4
gpt4 key购买 nike

我在理解Blueprint.errorhandlerBlueprint.app_errorhandler之间的区别时遇到了一些麻烦。根据API文档(重点是我的):

errorhandler(code_or_exception)

Registers an error handler that becomes active for this blueprint only. Please be aware that routing does not happen local to a blueprint so an error handler for 404 usually is not handled by a blueprint unless it is caused inside a view function. Another special case is the 500 internal server error which is always looked up from the application.



AFAIK是Flask中的蓝图对象,它是“一组可以在应用程序上注册的操作,甚至可以多次注册”。

我的问题是:
  • 错误如何在一组操作中局部出现?
  • View 函数如何导致错误?
  • 最佳答案

    “本地”是指相对于路线注册的路线。蓝图路由始终以您注册蓝图时使用的名称作为前缀,因此它们自然地进行了分组,并且从URL路径拓 flutter 的 Angular 来看,它们具有局部性。那么“非本地”就是与蓝图无关的任何 View ;它们将具有不同的前缀或根本没有前缀。

    View 函数可以引发exceptions,并且特定的异常(从 HTTPException 派生的任何异常)具有与之关联的HTTP错误代码。 @blueprint.errorhandler()为此类异常或关联的HTTP错误代码注册一个处理程序。

    该文档说明的是,路由过程中引发的错误(例如404 NotFound错误)尚无 View ,因此您也无法将该错误路由到特定的蓝图。

    在后台,当路由成功找到一个 View 来处理请求时,request.blueprint设置为与该 View 相对应的关联注册蓝图。如果然后发生错误,并且需要找到错误处理程序,则flat的request.blueprint值可让Flask查找“本地”错误处理程序。

    关于python - “local to a blueprint”是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39466753/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com