summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authormike bayer <mike_mp@zzzcomputing.com>2018-12-01 16:52:22 +0000
committerGerrit Code Review <gerrit@bbpush.zzzcomputing.com>2018-12-01 16:52:22 +0000
commitc8dea359db9bea58dc64880d306dbee2a26df247 (patch)
tree85525c1e66dc38077989c2fb4b1400b34cb2a7d1 /lib
parent7940e7dc9c40b80b103400bad6e9aac2ce8824bd (diff)
parentfb05e085fe48a1c48fcb4bcf89ba58c0d7584b8c (diff)
downloadsqlalchemy-c8dea359db9bea58dc64880d306dbee2a26df247.tar.gz
Merge "Apply path generation for superclasses to Load._set_path_strategy()"
Diffstat (limited to 'lib')
-rw-r--r--lib/sqlalchemy/orm/strategy_options.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/sqlalchemy/orm/strategy_options.py b/lib/sqlalchemy/orm/strategy_options.py
index af9bd71b6..0ef34b0b9 100644
--- a/lib/sqlalchemy/orm/strategy_options.py
+++ b/lib/sqlalchemy/orm/strategy_options.py
@@ -357,9 +357,15 @@ class Load(Generative, MapperOption):
else:
effective_path = self.path
- self._set_for_path(
- self.context, effective_path, replace=True,
- merge_opts=self.is_opts_only)
+ if effective_path.is_token:
+ for path in effective_path.generate_for_superclasses():
+ self._set_for_path(
+ self.context, path, replace=True,
+ merge_opts=self.is_opts_only)
+ else:
+ self._set_for_path(
+ self.context, effective_path, replace=True,
+ merge_opts=self.is_opts_only)
def __getstate__(self):
d = self.__dict__.copy()