[table] Allowing to show the time grain in table view (#2294)

Explicitely request to show the time grain in the table view as
a checkbox
This commit is contained in:
Maxime Beauchemin 2017-02-28 11:10:42 -08:00 committed by GitHub
parent 4d349c7885
commit c894c54d00
3 changed files with 17 additions and 1 deletions

View File

@ -188,6 +188,13 @@ export const controls = {
'displaying the Y scale',
},
include_time: {
type: 'CheckboxControl',
label: 'Include Time',
description: 'Whether to include the time granularity as defined in the time section',
default: false,
},
bar_stacked: {
type: 'CheckboxControl',
label: 'Stacked Bars',

View File

@ -236,6 +236,7 @@ const visTypes = {
description: 'Use this section if you want a query that aggregates',
controlSetRows: [
['groupby', 'metrics'],
['include_time'],
],
},
{
@ -259,6 +260,9 @@ const visTypes = {
default: null,
validators: null,
},
time_grain_sqla: {
default: null,
},
},
},

View File

@ -366,10 +366,15 @@ class TableViz(BaseViz):
def should_be_timeseries(self):
fd = self.form_data
# TODO handle datasource-type-specific code in datasource
return (
conditions_met = (
(fd.get('granularity') and fd.get('granularity') != 'all') or
(fd.get('granularity_sqla') and fd.get('time_grain_sqla'))
)
if fd.get('include_time') and not conditions_met:
raise Exception(
"Pick a granularity in the Time section or "
"uncheck 'Include Time'")
return fd.get('include_time')
def query_obj(self):
d = super(TableViz, self).query_obj()