From commits-return-1751-archive-asf-public=cust-asf.ponee.io@superset.incubator.apache.org Mon Oct 29 18:33:11 2018 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx-eu-01.ponee.io (Postfix) with SMTP id A2EC8180627 for ; Mon, 29 Oct 2018 18:33:10 +0100 (CET) Received: (qmail 18085 invoked by uid 500); 29 Oct 2018 17:33:09 -0000 Mailing-List: contact commits-help@superset.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@superset.incubator.apache.org Delivered-To: mailing list commits@superset.incubator.apache.org Received: (qmail 18076 invoked by uid 99); 29 Oct 2018 17:33:09 -0000 Received: from ec2-52-202-80-70.compute-1.amazonaws.com (HELO gitbox.apache.org) (52.202.80.70) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 29 Oct 2018 17:33:09 +0000 Received: by gitbox.apache.org (ASF Mail Server at gitbox.apache.org, from userid 33) id 3085D82C08; Mon, 29 Oct 2018 17:33:09 +0000 (UTC) Date: Mon, 29 Oct 2018 17:33:09 +0000 To: "commits@superset.apache.org" Subject: [incubator-superset] branch master updated: [explore] Include "Autocomplete Query Predicate" field to Table Editor (#6171) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Message-ID: <154083438885.8846.13604910851916844788@gitbox.apache.org> From: maximebeauchemin@apache.org X-Git-Host: gitbox.apache.org X-Git-Repo: incubator-superset X-Git-Refname: refs/heads/master X-Git-Reftype: branch X-Git-Oldrev: d6908eef49dd0ed6d9ae4592f5f7ff39854e3eec X-Git-Newrev: 5403f31007452a1f63d22332a3c705a6d77b5f0e X-Git-Rev: 5403f31007452a1f63d22332a3c705a6d77b5f0e X-Git-NotificationType: ref_changed_plus_diff X-Git-Multimail-Version: 1.5.dev Auto-Submitted: auto-generated This is an automated email from the ASF dual-hosted git repository. maximebeauchemin pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/incubator-superset.git The following commit(s) were added to refs/heads/master by this push: new 5403f31 [explore] Include "Autocomplete Query Predicate" field to Table Editor (#6171) 5403f31 is described below commit 5403f31007452a1f63d22332a3c705a6d77b5f0e Author: Maxime Beauchemin AuthorDate: Mon Oct 29 10:33:03 2018 -0700 [explore] Include "Autocomplete Query Predicate" field to Table Editor (#6171) * Improvements around filters * Adding simple test --- .../spec/javascripts/datasource/DatasourceEditor_spec.jsx | 6 ++++++ superset/assets/src/datasource/DatasourceEditor.jsx | 12 ++++++++++++ .../components/AdhocFilterEditPopoverSimpleTabContent.jsx | 6 +++--- superset/connectors/sqla/models.py | 5 ++++- 4 files changed, 25 insertions(+), 4 deletions(-) diff --git a/superset/assets/spec/javascripts/datasource/DatasourceEditor_spec.jsx b/superset/assets/spec/javascripts/datasource/DatasourceEditor_spec.jsx index 4808c48..173127b 100644 --- a/superset/assets/spec/javascripts/datasource/DatasourceEditor_spec.jsx +++ b/superset/assets/spec/javascripts/datasource/DatasourceEditor_spec.jsx @@ -6,6 +6,7 @@ import fetchMock from 'fetch-mock'; import thunk from 'redux-thunk'; import DatasourceEditor from '../../../src/datasource/DatasourceEditor'; +import Field from '../../../src/CRUD/Field'; import mockDatasource from '../../fixtures/mockDatasource'; const props = { @@ -70,4 +71,9 @@ describe('DatasourceEditor', () => { inst.mergeColumns([extraColumn]); expect(inst.state.databaseColumns).toHaveLength(numCols + 1); }); + + it('renders isSqla fields', () => { + expect(wrapper.state('isSqla')).toBe(true); + expect(wrapper.find(Field).find({ fieldKey: 'fetch_values_predicate' }).exists()).toBe(true); + }); }); diff --git a/superset/assets/src/datasource/DatasourceEditor.jsx b/superset/assets/src/datasource/DatasourceEditor.jsx index 71a2971..7c7c8d2 100644 --- a/superset/assets/src/datasource/DatasourceEditor.jsx +++ b/superset/assets/src/datasource/DatasourceEditor.jsx @@ -336,6 +336,18 @@ export class DatasourceEditor extends React.PureComponent { descr={t('Whether to populate autocomplete filters options')} control={} /> + {this.state.isSqla && + } + />} { - this.setState(() => ({ suggestions: json, abortActiveRequest: null })); + this.setState(() => ({ suggestions: json, abortActiveRequest: null, loading: false })); }); } } @@ -272,7 +272,7 @@ export default class AdhocFilterEditPopoverSimpleTabContent extends React.Compon freeForm name="filter-comparator-value" value={adhocFilter.comparator} - isLoading={false} + isLoading={this.state.loading} choices={this.state.suggestions} onChange={this.onComparatorChange} showHeader={false} diff --git a/superset/connectors/sqla/models.py b/superset/connectors/sqla/models.py index 0530e8f..b06332e 100644 --- a/superset/connectors/sqla/models.py +++ b/superset/connectors/sqla/models.py @@ -282,7 +282,9 @@ class SqlaTable(Model, BaseDatasource): export_fields = ( 'table_name', 'main_dttm_col', 'description', 'default_endpoint', 'database_id', 'offset', 'cache_timeout', 'schema', - 'sql', 'params', 'template_params', 'filter_select_enabled') + 'sql', 'params', 'template_params', 'filter_select_enabled', + 'fetch_values_predicate', + ) update_from_object_fields = [ f for f in export_fields if f not in ('table_name', 'database_id')] export_parent = 'database' @@ -414,6 +416,7 @@ class SqlaTable(Model, BaseDatasource): d['granularity_sqla'] = utils.choicify(self.dttm_cols) d['time_grain_sqla'] = grains d['main_dttm_col'] = self.main_dttm_col + d['fetch_values_predicate'] = self.fetch_values_predicate return d def values_for_column(self, column_name, limit=10000):