From: Mike Bayer Date: Wed, 20 Sep 2006 00:26:38 +0000 (+0000) Subject: check for mapper or class, raise exception otherwise [ticket:305] X-Git-Tag: rel_0_3_0~149 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3e94bbdba83395bb04c01a15086d007d78e6a233;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git check for mapper or class, raise exception otherwise [ticket:305] --- diff --git a/lib/sqlalchemy/orm/properties.py b/lib/sqlalchemy/orm/properties.py index fd9841f336..8372c41f85 100644 --- a/lib/sqlalchemy/orm/properties.py +++ b/lib/sqlalchemy/orm/properties.py @@ -205,9 +205,11 @@ class PropertyLoader(mapper.MapperProperty): def do_init(self): if isinstance(self.argument, type): self.mapper = mapper.class_mapper(self.argument, compile=False)._check_compile() - else: + elif isinstance(self.argument, mapper.Mapper): self.mapper = self.argument._check_compile() - + else: + raise exceptions.ArgumentError("relation '%s' expects a class or a mapper argument (received: %s)" % (self.key, type(self.argument))) + self.mapper = self.mapper.get_select_mapper()._check_compile() if self.association is not None: