# HG changeset patch # User Sandro Knauß # Date 1330654441 -3600 # Node ID 5da0f00ef872ac48ff4a8265cfb0f65af242209e # Parent 90a81145852c900b4d7f3ab03a85cee775c89278 session.typs -> Offer.typs diff -r 90a81145852c -r 5da0f00ef872 iro/model/decorators.py --- a/iro/model/decorators.py Fri Mar 02 03:01:46 2012 +0100 +++ b/iro/model/decorators.py Fri Mar 02 03:14:01 2012 +0100 @@ -35,7 +35,7 @@ @dbdefer def vTyp(value,field, session): - for typ in session.typs: + for typ in Offer.typs(session): if value == typ[0]: break else: diff -r 90a81145852c -r 5da0f00ef872 iro/model/schema.py --- a/iro/model/schema.py Fri Mar 02 03:01:46 2012 +0100 +++ b/iro/model/schema.py Fri Mar 02 03:14:01 2012 +0100 @@ -62,6 +62,9 @@ def routes(cls, session, typ): return session.query(cls).filter_by(typ=typ) + @classmethod + def typs(cls, session): + return session.query(cls.typ).distinct() class Message(Base): """Wenn ein Vorgang von Iro Kosten erzeugt hat wird eine neue Zeile eingefügt. Solange nicht bezahlt wurde ist isBilled=0.""" diff -r 90a81145852c -r 5da0f00ef872 iro/model/session.py --- a/iro/model/session.py Fri Mar 02 03:01:46 2012 +0100 +++ b/iro/model/session.py Fri Mar 02 03:14:01 2012 +0100 @@ -1,8 +1,4 @@ from sqlalchemy.orm.session import Session -import schema - class IroSession(Session): - @property - def typs(self): - return self.query(schema.Offer.typ).distinct() + pass diff -r 90a81145852c -r 5da0f00ef872 tests/db.py --- a/tests/db.py Fri Mar 02 03:01:46 2012 +0100 +++ b/tests/db.py Fri Mar 02 03:14:01 2012 +0100 @@ -80,7 +80,7 @@ session.add(o) with self.session() as session: - self.assertEqual(session.typs.all(),[('sms',),]) + self.assertEqual(Offer.typs(session).all(),[('sms',),]) with self.session() as session: o=Offer(name="s2", provider="sipgate", route="basic", typ="sms") @@ -89,7 +89,7 @@ session.add(o) with self.session() as session: - self.assertEqual(session.typs.order_by(Offer.typ).all(),[('sms',),('sms2',)]) + self.assertEqual(Offer.typs(session).order_by(Offer.typ).all(),[('sms',),('sms2',)]) def testOfferRoutes(self): with self.session() as session: