diff options
-rw-r--r-- | lib/sqlalchemy/mapper.py | 12 | ||||
-rw-r--r-- | lib/sqlalchemy/objectstore.py | 2 |
2 files changed, 13 insertions, 1 deletions
diff --git a/lib/sqlalchemy/mapper.py b/lib/sqlalchemy/mapper.py index e5b384ba5..12c928979 100644 --- a/lib/sqlalchemy/mapper.py +++ b/lib/sqlalchemy/mapper.py @@ -260,6 +260,17 @@ class Mapper(object): engines = property(lambda s: [t.engine for t in s.tables]) + def add_property(self, key, prop): + if isinstance(prop, schema.Column): + self.columns[key] = prop + prop = ColumnProperty(prop) + self.props[key] = prop + if isinstance(prop, ColumnProperty): + for col in prop.columns: + proplist = self.columntoproperty.setdefault(col.original, []) + proplist.append(prop) + prop.init(key, self) + def _init_properties(self): [prop.init(key, self) for key, prop in self.props.iteritems()] @@ -819,6 +830,7 @@ class PropertyLoader(MapperProperty): if self.uselist: childlist = uow.attributes.get_history(obj, self.key, passive = False) + print "W00P RD on", repr(obj), "list=", repr([repr(k.__dict__) for k in childlist]) else: childlist = uow.attributes.get_history(obj, self.key) for child in childlist.deleted_items() + childlist.unchanged_items(): diff --git a/lib/sqlalchemy/objectstore.py b/lib/sqlalchemy/objectstore.py index 914aaecb2..6c7d9af4c 100644 --- a/lib/sqlalchemy/objectstore.py +++ b/lib/sqlalchemy/objectstore.py @@ -336,7 +336,7 @@ class UOWTransaction(object): task.mapper.register_dependencies(self) head = self._sort_dependencies() - print "Task dump:\n" + head.dump() + #print "Task dump:\n" + head.dump() if head is not None: head.execute(self) |