mirror of
https://github.com/sqlalchemy/sqlalchemy.git
synced 2026-05-17 14:17:29 -04:00
still having mappers not getting compiled...sigh...
This commit is contained in:
@@ -7,6 +7,7 @@ of subclassed directly.
|
||||
activated when activemapper is imported
|
||||
- small fix to URL regexp to allow filenames with '@' in them
|
||||
- fixes to Session expunge/update/etc.
|
||||
- select_table mappers *still* werent always compiling
|
||||
|
||||
0.2.5
|
||||
- fixed endless loop bug in select_by(), if the traversal hit
|
||||
|
||||
@@ -17,7 +17,7 @@ class Query(object):
|
||||
self.mapper = mapper.class_mapper(class_or_mapper, entity_name=entity_name)
|
||||
else:
|
||||
self.mapper = class_or_mapper.compile()
|
||||
self.mapper = self.mapper.get_select_mapper()
|
||||
self.mapper = self.mapper.get_select_mapper().compile()
|
||||
|
||||
self.always_refresh = kwargs.pop('always_refresh', self.mapper.always_refresh)
|
||||
self.order_by = kwargs.pop('order_by', self.mapper.order_by)
|
||||
|
||||
+19
-1
@@ -85,7 +85,25 @@ class MultipleTableTest(testbase.PersistTest):
|
||||
def test_t_t_t(self):
|
||||
self.do_test(True, True, True)
|
||||
|
||||
|
||||
def testcompile(self):
|
||||
person_join = polymorphic_union( {
|
||||
'engineer':people.join(engineers),
|
||||
'manager':people.join(managers),
|
||||
'person':people.select(people.c.type=='person'),
|
||||
}, None, 'pjoin')
|
||||
|
||||
person_mapper = mapper(Person, people, select_table=person_join, polymorphic_on=person_join.c.type, polymorphic_identity='person')
|
||||
mapper(Engineer, engineers, inherits=person_mapper, polymorphic_identity='engineer')
|
||||
mapper(Manager, managers, inherits=person_mapper, polymorphic_identity='manager')
|
||||
|
||||
session = create_session()
|
||||
session.save(Manager(name='Tom', status='knows how to manage things'))
|
||||
session.save(Engineer(name='Kurt', status='knows how to hack'))
|
||||
session.flush()
|
||||
print session.query(Engineer).select()
|
||||
|
||||
print session.query(Person).select()
|
||||
|
||||
def do_test(self, include_base=False, lazy_relation=True, redefine_colprop=False):
|
||||
"""tests the polymorph.py example, with several options:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user