summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2007-04-17 18:15:58 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2007-04-17 18:15:58 +0000
commit8d7a271b8687dbcb58cac713f9e16e445d242881 (patch)
tree8029d1fabfea0facee77fec16f2968e2ceecf331 /examples
parentd3b71149376468dc8cc6e869bf9acfa67b84a872 (diff)
downloadsqlalchemy-8d7a271b8687dbcb58cac713f9e16e445d242881.tar.gz
docs/examples for new with_parent() feature
Diffstat (limited to 'examples')
-rw-r--r--examples/collections/large_collection.py7
1 files changed, 3 insertions, 4 deletions
diff --git a/examples/collections/large_collection.py b/examples/collections/large_collection.py
index 393579707..743624e99 100644
--- a/examples/collections/large_collection.py
+++ b/examples/collections/large_collection.py
@@ -18,9 +18,8 @@ meta.create_all()
class Organization(object):
def __init__(self, name):
self.name = name
- def find_members(self, criterion):
- """locate a subset of the members associated with this Organization"""
- return object_session(self).query(Member).select(and_(member_table.c.name.like(criterion), org_table.c.org_id==self.org_id), from_obj=[org_table.join(member_table)])
+ member_query = property(lambda self:object_session(self).query(Member).with_parent(self),
+ doc="""locate a subset of the members associated with this Organization""")
class Member(object):
def __init__(self, name):
@@ -60,7 +59,7 @@ sess.clear()
# reload. load the org and some child members
print "-------------------------\nload subset of members"
org = sess.query(Organization).get(org.org_id)
-members = org.find_members('%member t%')
+members = org.member_query.filter_by(member_table.c.name.like('%member t%')).list()
print members
sess.clear()