Python 在烧瓶应用中正确使用g

Python 在烧瓶应用中正确使用g,python,python-3.x,flask,Python,Python 3.x,Flask,我是flask的新手,正在尝试找出使用g、request和current\u app的正确方法。还有什么时候不用呢 我正在尝试做的一个简单示例: 从数据库导入数据库类 def route_handler(): r=发出http请求() db=DBClass() 数据库存储(r) 上面是我如何处理这个问题的,导入一个db客户机并在我的主处理程序中使用它 我在别处看到的是: ###db.py 从烧瓶进口g def get_db(): 如果“db”不在g中: g、 db=DBClass() 返回g.

我是flask的新手,正在尝试找出使用
g
request
current\u app
的正确方法。还有什么时候不用呢

我正在尝试做的一个简单示例:

从数据库导入数据库类
def route_handler():
r=发出http请求()
db=DBClass()
数据库存储(r)
上面是我如何处理这个问题的,导入一个db客户机并在我的主处理程序中使用它

我在别处看到的是:

###db.py
从烧瓶进口g
def get_db():
如果“db”不在g中:
g、 db=DBClass()
返回g.db
类别DBClass:
# ...
###route.py
从数据库导入获取\u数据库
def route_handler():
r=发出http请求()
db=get_db()
数据库存储(r)
为什么有人会选择选项2?从结构、性能或安全角度来看,这种方法是否有任何好处

据我所知,
g
在每个请求上都是新的,所以在那里存储东西是短暂的