summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/mapping/properties.py
diff options
context:
space:
mode:
Diffstat (limited to 'lib/sqlalchemy/mapping/properties.py')
-rw-r--r--lib/sqlalchemy/mapping/properties.py7
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/sqlalchemy/mapping/properties.py b/lib/sqlalchemy/mapping/properties.py
index 34b0ae48e..e5f702b57 100644
--- a/lib/sqlalchemy/mapping/properties.py
+++ b/lib/sqlalchemy/mapping/properties.py
@@ -228,11 +228,9 @@ class PropertyLoader(MapperProperty):
return PropertyLoader.ONETOMANY
elif self.secondaryjoin is not None:
return PropertyLoader.MANYTOMANY
- elif self.foreigntable == self.target:
- #elif self.foreigntable is self.target or self.foreigntable in self.mapper.tables:
+ elif self.foreigntable == self.mapper.noninherited_table:
return PropertyLoader.ONETOMANY
- elif self.foreigntable == self.parent.table:
- #elif self.foreigntable is self.parent.table or self.foreigntable in self.parent.tables:
+ elif self.foreigntable == self.parent.noninherited_table:
return PropertyLoader.MANYTOONE
else:
raise ArgumentError("Cant determine relation direction")
@@ -529,6 +527,7 @@ class PropertyLoader(MapperProperty):
The list of rules is used within commits by the _synchronize() method when dependent
objects are processed."""
+
parent_tables = util.HashSet(self.parent.tables + [self.parent.primarytable])
target_tables = util.HashSet(self.mapper.tables + [self.mapper.primarytable])