summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2007-01-29 23:41:11 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2007-01-29 23:41:11 +0000
commit9cd9fc25d3f708b83041508960ced66d3f4a5e36 (patch)
tree6980cdb105800e066b089301bae88a8c3d55d938 /lib
parent3dc66adea1f5ca395feb902b17f60b24c96cdf15 (diff)
downloadsqlalchemy-9cd9fc25d3f708b83041508960ced66d3f4a5e36.tar.gz
reset managed attributes on mapped classes when clear_mappers called
Diffstat (limited to 'lib')
-rw-r--r--lib/sqlalchemy/orm/__init__.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/sqlalchemy/orm/__init__.py b/lib/sqlalchemy/orm/__init__.py
index b7706e381..96890272d 100644
--- a/lib/sqlalchemy/orm/__init__.py
+++ b/lib/sqlalchemy/orm/__init__.py
@@ -15,7 +15,7 @@ from sqlalchemy.orm.query import Query
from sqlalchemy.orm.util import polymorphic_union
from sqlalchemy.orm import properties, strategies
from sqlalchemy.orm.session import Session as create_session
-from sqlalchemy.orm.session import object_session
+from sqlalchemy.orm.session import object_session, attribute_manager
__all__ = ['relation', 'backref', 'eagerload', 'lazyload', 'noload', 'deferred', 'defer', 'undefer', 'extension',
'mapper', 'clear_mappers', 'compile_mappers', 'clear_mapper', 'class_mapper', 'object_mapper', 'MapperExtension', 'Query',
@@ -72,6 +72,8 @@ def clear_mappers():
"""remove all mappers that have been created thus far.
when new mappers are created, they will be assigned to their classes as their primary mapper."""
+ for mapper in mapper_registry.values():
+ attribute_manager.reset_class_managed(mapper.class_)
mapper_registry.clear()
mapperlib.ClassKey.instances.clear()