]> asedeno.scripts.mit.edu Git - bluechips.git/commitdiff
Restructure to accurately reflect parent-child relations
authorEvan Broder <broder@mit.edu>
Sat, 19 Jul 2008 05:05:01 +0000 (05:05 +0000)
committerEvan Broder <broder@mit.edu>
Sat, 19 Jul 2008 05:05:01 +0000 (05:05 +0000)
Also cascade deletes

bluechips/model/__init__.py

index 0be372cc5e5914124d1d0fb1d0a0c06fb295b63a..a25f1d12df768e845a426a76321c4671d4e4734a 100644 (file)
@@ -74,22 +74,26 @@ transfers = sa.Table('transfers', meta.metadata,
 
 ### DB/Class Mapping ###
 
-orm.mapper(User, users)
+orm.mapper(User, users,
+           properties={
+        'expenditures': orm.relation(Expenditure,
+                                     backref='spender',
+                                     lazy=False)
+})
 
 orm.mapper(Expenditure, expenditures, order_by=expenditures.c.date.desc(),
            properties={
-        'spender': orm.relation(User,
-                                backref='expenditures',
-                                lazy=False)
+        'splits': orm.relation(Split, backref='expenditure',
+                               cascade='all, delete'),
+        'subitems': orm.relation(Subitem, backref='expenditure',
+                                 cascade='all, delete')
 })
 
 orm.mapper(Split, splits, properties={
-        'expenditure': orm.relation(Expenditure, backref='splits'),
         'user': orm.relation(User)
 })
 
 orm.mapper(Subitem, subitems, properties={
-        'expenditure': orm.relation(Expenditure, backref='subitems'),
         'user': orm.relation(User)
 })