From: Mike Bayer Date: Fri, 31 Mar 2006 07:29:28 +0000 (+0000) Subject: tweak... X-Git-Tag: rel_0_1_6~45 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=effb156b1ebf8924b69c59679fefbeed958af435;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git tweak... --- diff --git a/lib/sqlalchemy/mapping/mapper.py b/lib/sqlalchemy/mapping/mapper.py index 9d2286eb05..0f2b4e19f7 100644 --- a/lib/sqlalchemy/mapping/mapper.py +++ b/lib/sqlalchemy/mapping/mapper.py @@ -19,8 +19,8 @@ import weakref # a dictionary mapping classes to their primary mappers mapper_registry = weakref.WeakKeyDictionary() -# a list of MapperExtensions that will be installed by default -extensions = [] +# a list of MapperExtensions that will be installed in all mappers by default +global_extensions = [] # a constant returned by _getattrbycolumn to indicate # this mapper is not handling an attribute for a particular @@ -56,13 +56,13 @@ class Mapper(object): ext = MapperExtension() - for ext_class in extensions: + for ext_class in global_extensions: ext = ext_class().chain(ext) + + for ext_obj in util.to_list(extension): + ext = ext_obj.chain(ext) - if extension is not None: - self.extension = extension.chain(ext) - else: - self.extension = ext + self.extension = ext self.class_ = class_ self.is_primary = is_primary diff --git a/lib/sqlalchemy/mods/selectresults.py b/lib/sqlalchemy/mods/selectresults.py index 9613d8fc0f..1f6b77a25c 100644 --- a/lib/sqlalchemy/mods/selectresults.py +++ b/lib/sqlalchemy/mods/selectresults.py @@ -3,7 +3,7 @@ import sqlalchemy.sql as sql import sqlalchemy.mapping as mapping def install_plugin(): - mapping.extensions.append(SelectResultsExt) + mapping.global_extensions.append(SelectResultsExt) class SelectResultsExt(mapping.MapperExtension): def select_by(self, mapper, *args, **params):