From a5c0cd1a0f496325035fbd3f3cbb8b81e7648301 Mon Sep 17 00:00:00 2001 From: René 'Necoro' Neumann Date: Tue, 10 Jan 2012 22:01:37 +0100 Subject: Fix bug that prevents closing sql-connections --- controller.py | 3 ++- index.py | 13 +++++++------ model.py | 2 +- 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/controller.py b/controller.py index ea8be5b..5056306 100644 --- a/controller.py +++ b/controller.py @@ -193,6 +193,7 @@ class ConstAdd: else: e.prev = None + web.ctx.orm.commit() raise web.seeother("/const/%s" % e.id) else: return render(self.template, form = f) @@ -219,7 +220,7 @@ class ConstAdd: cur = self.get_expense() if cur.id is None: # empty - session.expunge(cur) + web.ctx.orm..expunge(cur) else: filter = sql.or_(CE.next == cur, filter) filter = sql.and_(filter, CE.id != cur.id) diff --git a/index.py b/index.py index e7687e2..1639fc4 100755 --- a/index.py +++ b/index.py @@ -24,18 +24,19 @@ urls = ( # ORM # def handle_sql(handler): - web.ctx.orm = session = model.session + web.ctx.orm = model.session try: - return handler() + h = handler() except web.HTTPError: - session.commit() - raise + web.ctx.orm.commit() + raise except: - session.rollback() + web.ctx.orm.rollback() raise else: - session.commit() + web.ctx.orm.commit() + return h # # The App diff --git a/model.py b/model.py index e9ee2be..fc43ad7 100644 --- a/model.py +++ b/model.py @@ -7,7 +7,7 @@ import datetime from functools import partial from collections import namedtuple -__all__ = ["Category", "SingleExpense", "ConstExpense", "CatExpense", "MonthExpense", "session"] +__all__ = ["Category", "SingleExpense", "ConstExpense", "CatExpense", "MonthExpense"] # # DB Setup -- cgit v1.2.3-70-g09d2