From 4c2f57bc0323e7c61975d62b6bb443e2e3e32df5 Mon Sep 17 00:00:00 2001 From: René 'Necoro' Neumann Date: Tue, 15 Feb 2011 04:52:50 +0100 Subject: ... and also omit cycles :) --- controller.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/controller.py b/controller.py index 3d0ed1d..0e68491 100644 --- a/controller.py +++ b/controller.py @@ -186,6 +186,18 @@ class ConstAdd: def form(self): CE = ConstExpense + + # get the list of 'previous' expenses + prev_list = CE.query.filter(CE.next == None) + cur = self.get_expense() + + if cur.id is None: # empty + session.expunge(cur) + else: + prev_list = prev_list.filter(CE.id != cur.id) + + prev_list = prev_list.order_by(CE.description).values(CE.id, CE.description) + return Form( form.Textbox( "start", @@ -221,8 +233,7 @@ class ConstAdd: ), form.Dropdown( "prev", - iter.chain([(-1, '')], ConstExpense.query.filter(ConstExpense.next == None).\ - order_by(CE.description).values(CE.id, CE.description)) + iter.chain([(-1, '')], prev_list) ) ) -- cgit v1.2.3-70-g09d2