[Checkins] SVN: z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/mapper.py better support for SQLAlchemy declarative layer
Andreas Jung
andreas at andreas-jung.com
Fri Dec 12 02:18:42 EST 2008
Log message for revision 93928:
better support for SQLAlchemy declarative layer
Changed:
U z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/mapper.py
-=-
Modified: z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/mapper.py
===================================================================
--- z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/mapper.py 2008-12-12 06:10:41 UTC (rev 93927)
+++ z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/mapper.py 2008-12-12 07:18:41 UTC (rev 93928)
@@ -16,6 +16,7 @@
from sqlalchemy import Table, MetaData
from sqlalchemy.orm import mapper, relation, class_mapper
+from sqlalchemy.ext.declarative import DeclarativeMeta
marker = object
@@ -115,7 +116,6 @@
self._dependent_tables = None
self._lock = threading.Lock()
-
def getMapper(self, name, schema='public'):
""" return a (cached) mapper class for a given table 'name' """
@@ -128,6 +128,12 @@
if self._model.has_key(name):
table = self._model[name].get('table')
+ # support for SA declarative layer
+ mapper_class = self._model[name].get('mapper_class')
+ if isinstance(mapper_class, DeclarativeMeta):
+ self._registerMapper(mapper_class, name)
+ return mapper_class
+
# if not: introspect table definition
if table is None:
More information about the Checkins
mailing list