Я использую слой Django ORM вне Django. Проект представляет собой веб-приложение, использующее внутреннюю структуру cusotm.
Теперь у меня не было проблем с настройкой Django ORM для автономной работы, но я немного беспокоюсь об управлении соединениями. Я прочитал Использование только части БД Django здесь, в SO, и это верно, что 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)
# Register an event that resets connection.queries
# when a Django request is started.
def reset_queries(**kwargs):
for conn in connections.all():
conn.queries = []
signals.request_started.connect(reset_queries)
# Register an event that rolls back the connections
# when a Django request has an exception.
def _rollback_on_exception(**kwargs):
from django.db import transaction
for conn in connections:
try:
transaction.rollback_unless_managed(using=conn)
except DatabaseError:
pass
signals.got_request_exception.connect(_rollback_on_exception)
С какими проблемами я могу столкнуться, если пропущу это управление подключением? (У меня нет возможности легко подключить эти сигналы к моей структуре)