From 51e4512abd25340b016279b92ae9ecadb41e237d Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Wed, 15 Jun 2016 14:36:24 -0400 Subject: [PATCH] Interpret lateral, alias as from clauses Also add doc members for Lateral. Change-Id: Ic801c296377ce84230139c6a43ecb3e93a852832 --- doc/build/core/selectable.rst | 2 ++ lib/sqlalchemy/sql/selectable.py | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/doc/build/core/selectable.rst b/doc/build/core/selectable.rst index 3f4d9565ec..263594d249 100644 --- a/doc/build/core/selectable.rst +++ b/doc/build/core/selectable.rst @@ -73,6 +73,8 @@ elements are themselves :class:`.ColumnElement` subclasses). :inherited-members: .. autoclass:: Lateral + :members: + :inherited-members: .. autoclass:: ScalarSelect :members: diff --git a/lib/sqlalchemy/sql/selectable.py b/lib/sqlalchemy/sql/selectable.py index ac955a60f7..741aa9bead 100644 --- a/lib/sqlalchemy/sql/selectable.py +++ b/lib/sqlalchemy/sql/selectable.py @@ -158,7 +158,7 @@ def alias(selectable, name=None, flat=False): .. versionadded:: 0.9.0 """ - return selectable.alias(name=name, flat=flat) + return _interpret_as_from(selectable).alias(name=name, flat=flat) def lateral(selectable, name=None): @@ -180,7 +180,7 @@ def lateral(selectable, name=None): :ref:`lateral_selects` - overview of usage. """ - return selectable.lateral(name=name) + return _interpret_as_from(selectable).lateral(name=name) class Selectable(ClauseElement): -- 2.47.2