From f30c31a8a27b3b3c4b286ab4c6db77094292843a Mon Sep 17 00:00:00 2001 From: Tim Richardson Date: Thu, 1 Jun 2017 16:53:04 +1000 Subject: [PATCH] fix to #1636: sqlgrid left= (left outer join) fails because db._adapter.tables() now returns dict (previously a table) --- gluon/sqlhtml.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gluon/sqlhtml.py b/gluon/sqlhtml.py index b37e6b93..b8cc55e5 100644 --- a/gluon/sqlhtml.py +++ b/gluon/sqlhtml.py @@ -29,7 +29,7 @@ from gluon.html import URL, FIELDSET, P, DEFAULT_PASSWORD_DISPLAY from pydal.base import DEFAULT from pydal.objects import Table, Row, Expression, Field, Set, Rows from pydal.adapters.base import CALLABLETYPES -from pydal.helpers.methods import smart_query, bar_encode, _repr_ref +from pydal.helpers.methods import smart_query, bar_encode, _repr_ref, merge_tablemaps from pydal.helpers.classes import Reference, SQLCustomType from gluon.storage import Storage from gluon.utils import md5_hash @@ -2329,7 +2329,7 @@ class SQLFORM(FORM): if not isinstance(left, (list, tuple)): left = [left] for join in left: - tablenames += db._adapter.tables(join) + tablenames = merge_tablemaps(tablenames, db._adapter.tables(join)) tables = [db[tablename] for tablename in tablenames] if fields: # add missing tablename to virtual fields