Flask官方教程:close_db(e = None)中的“ e”是什么?

时间:2019-08-12 03:49:32

标签: python flask

在Flask的教程 [here]中,close_db的定义包括默认值'e = None'。但是,该值未在函数中使用,我也无法在任何地方找到引用。

def close_db(e=None):
    db = g.pop('db', None)

    if db is not None:
        db.close()

是否有明确说明“ e = None”的特定原因?

1 个答案:

答案 0 :(得分:1)

您会在本教程中注意到,在init_app函数中,close_db作为参数传递给app.teardown_appcontext()

来自teardown_appcontext的文档字符串中:

  

由于未处理的异常而调用了拆解函数时   它将传递一个错误对象。如果:meth:errorhandler是   已注册,它将处理异常,并且不会删除   收到。

因此e引用错误对象,默认情况下为None。您可以了解有关注册错误处理程序at this link的更多信息。