summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/orm
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2006-08-12 21:08:31 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2006-08-12 21:08:31 +0000
commit605ed429cd7992e3080f8293ce62c98c9c766475 (patch)
treeb23baa367f2297e36bd7f19fa6d0ee259ea35745 /lib/sqlalchemy/orm
parent98933ba84d6618d5fba366e556932223964c7200 (diff)
downloadsqlalchemy-605ed429cd7992e3080f8293ce62c98c9c766475.tar.gz
improved error message when a backref conflicts with a column-based property
Diffstat (limited to 'lib/sqlalchemy/orm')
-rw-r--r--lib/sqlalchemy/orm/properties.py2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/sqlalchemy/orm/properties.py b/lib/sqlalchemy/orm/properties.py
index 26717fb65..555134874 100644
--- a/lib/sqlalchemy/orm/properties.py
+++ b/lib/sqlalchemy/orm/properties.py
@@ -717,6 +717,8 @@ class BackRef(object):
parent = prop.parent.primary_mapper()
relation = cls(parent, prop.secondary, pj, sj, backref=prop.key, is_backref=True, **self.kwargs)
mapper._compile_property(self.key, relation);
+ elif not isinstance(mapper.props[self.key], PropertyLoader):
+ raise exceptions.ArgumentError("Cant create backref '%s' on mapper '%s'; an incompatible property of that name already exists" % (self.key, str(mapper)))
else:
# else set one of us as the "backreference"
parent = prop.parent.primary_mapper()