summaryrefslogtreecommitdiff
path: root/examples/backref/backref_tree.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2006-05-25 14:20:23 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2006-05-25 14:20:23 +0000
commitbb79e2e871d0a4585164c1a6ed626d96d0231975 (patch)
tree6d457ba6c36c408b45db24ec3c29e147fe7504ff /examples/backref/backref_tree.py
parent4fc3a0648699c2b441251ba4e1d37a9107bd1986 (diff)
downloadsqlalchemy-bb79e2e871d0a4585164c1a6ed626d96d0231975.tar.gz
merged 0.2 branch into trunk; 0.1 now in sqlalchemy/branches/rel_0_1
Diffstat (limited to 'examples/backref/backref_tree.py')
-rw-r--r--examples/backref/backref_tree.py21
1 files changed, 9 insertions, 12 deletions
diff --git a/examples/backref/backref_tree.py b/examples/backref/backref_tree.py
index 09598069d..3f81b1145 100644
--- a/examples/backref/backref_tree.py
+++ b/examples/backref/backref_tree.py
@@ -1,7 +1,6 @@
from sqlalchemy import *
-import sqlalchemy.attributes as attributes
-engine = create_engine('sqlite://', echo=True)
+metadata = BoundMetaData('sqlite:///', echo=True)
class Tree(object):
def __init__(self, name='', father=None):
@@ -12,27 +11,25 @@ class Tree(object):
def __repr__(self):
return self.__str__()
-table = Table('tree', engine,
+table = Table('tree', metadata,
Column('id', Integer, primary_key=True),
Column('name', String(64), nullable=False),
- Column('father_id', Integer, ForeignKey('tree.id'), nullable=True),)
+ Column('father_id', Integer, ForeignKey('tree.id'), nullable=True))
+table.create()
-assign_mapper(Tree, table,
+mapper(Tree, table,
properties={
- # set up a backref using a string
- #'father':relation(Tree, foreignkey=table.c.id,primaryjoin=table.c.father_id==table.c.id, backref='childs')},
-
- # or set up using the backref() function, which allows arguments to be passed
- 'childs':relation(Tree, foreignkey=table.c.father_id, primaryjoin=table.c.father_id==table.c.id, backref=backref('father', uselist=False, foreignkey=table.c.id))},
+ 'childs':relation(Tree, foreignkey=table.c.father_id, primaryjoin=table.c.father_id==table.c.id, backref=backref('father', uselist=False, foreignkey=table.c.id))},
)
-table.create()
root = Tree('root')
child1 = Tree('child1', root)
child2 = Tree('child2', root)
child3 = Tree('child3', child1)
-objectstore.commit()
+session = create_session()
+session.save(root)
+session.flush()
print root.childs
print child1.childs