我需要在Django的模型框架之外管理数据库连接池。
初始化这样的对象的'正确'位置(以便整个应用程序可以访问同一个对象),第二个要求是当django / python关闭时关闭我的连接的能力。
谢谢!
答案 0 :(得分:1)
看起来Django在django.db中有自己的Connection对象(正确类型的代理)。 _ init _ .py 因此,在您的个人应用的 _ init _ 中初始化您的内容似乎不是一个坏主意。
Django在关闭连接时会注册一个信号,所以只需捕获此信号即可关闭连接。以下代码取自django.db。 _ init _ .py
# Register an event that closes the database connection
# when a Django request is finished.
def close_connection(**kwargs):
for conn in connections.all():
conn.close()
signals.request_finished.connect(close_connection)
答案 1 :(得分:0)
满足您的第二个要求: Django注册信号以关闭连接
https://github.com/django/django/blob/master/django/db/init.py