mirror of
https://github.com/apache/superset.git
synced 2024-09-12 08:39:45 -04:00
Adding Metric class as well
This commit is contained in:
parent
b18d117852
commit
32442aa6b7
@ -1050,7 +1050,7 @@ class Log(Model):
|
||||
dttm = Column(DateTime, default=func.now())
|
||||
|
||||
|
||||
class Metric(Model):
|
||||
class DruidMetric(Model):
|
||||
__tablename__ = 'metrics'
|
||||
id = Column(Integer, primary_key=True)
|
||||
metric_name = Column(String(512))
|
||||
@ -1098,9 +1098,9 @@ class DruidColumn(Model, AuditMixinNullable):
|
||||
return self.type in ('LONG', 'DOUBLE', 'FLOAT')
|
||||
|
||||
def generate_metrics(self):
|
||||
M = Metric
|
||||
M = DruidMetric
|
||||
metrics = []
|
||||
metrics.append(Metric(
|
||||
metrics.append(DruidMetric(
|
||||
metric_name='count',
|
||||
verbose_name='COUNT(*)',
|
||||
metric_type='count',
|
||||
@ -1125,7 +1125,7 @@ class DruidColumn(Model, AuditMixinNullable):
|
||||
if self.min and self.isnum:
|
||||
mt = corrected_type.lower() + 'Min'
|
||||
name = 'min__' + self.column_name
|
||||
metrics.append(Metric(
|
||||
metrics.append(DruidMetric(
|
||||
metric_name=name,
|
||||
metric_type='min',
|
||||
verbose_name='MIN({})'.format(self.column_name),
|
||||
@ -1135,7 +1135,7 @@ class DruidColumn(Model, AuditMixinNullable):
|
||||
if self.max and self.isnum:
|
||||
mt = corrected_type.lower() + 'Max'
|
||||
name = 'max__' + self.column_name
|
||||
metrics.append(Metric(
|
||||
metrics.append(DruidMetric(
|
||||
metric_name=name,
|
||||
metric_type='max',
|
||||
verbose_name='MAX({})'.format(self.column_name),
|
||||
@ -1145,7 +1145,7 @@ class DruidColumn(Model, AuditMixinNullable):
|
||||
if self.count_distinct:
|
||||
mt = 'count_distinct'
|
||||
name = 'count_distinct__' + self.column_name
|
||||
metrics.append(Metric(
|
||||
metrics.append(DruidMetric(
|
||||
metric_name=name,
|
||||
verbose_name='COUNT(DISTINCT {})'.format(self.column_name),
|
||||
metric_type='count_distinct',
|
||||
|
@ -85,7 +85,7 @@ class DruidColumnInlineView(CompactCRUDMixin, PanoramixModelView):
|
||||
def post_update(self, col):
|
||||
col.generate_metrics()
|
||||
|
||||
appbuilder.add_view_no_menu(ColumnInlineView)
|
||||
appbuilder.add_view_no_menu(DruidColumnInlineView)
|
||||
|
||||
|
||||
class SqlMetricInlineView(CompactCRUDMixin, PanoramixModelView):
|
||||
@ -99,8 +99,8 @@ class SqlMetricInlineView(CompactCRUDMixin, PanoramixModelView):
|
||||
appbuilder.add_view_no_menu(SqlMetricInlineView)
|
||||
|
||||
|
||||
class MetricInlineView(CompactCRUDMixin, PanoramixModelView):
|
||||
datamodel = SQLAInterface(models.Metric)
|
||||
class DruidMetricInlineView(CompactCRUDMixin, PanoramixModelView):
|
||||
datamodel = SQLAInterface(models.DruidMetric)
|
||||
list_columns = ['metric_name', 'verbose_name', 'metric_type']
|
||||
edit_columns = [
|
||||
'metric_name', 'description', 'verbose_name', 'metric_type',
|
||||
@ -111,7 +111,7 @@ class MetricInlineView(CompactCRUDMixin, PanoramixModelView):
|
||||
validators_columns = {
|
||||
'json': [validate_json],
|
||||
}
|
||||
appbuilder.add_view_no_menu(MetricInlineView)
|
||||
appbuilder.add_view_no_menu(DruidMetricInlineView)
|
||||
|
||||
|
||||
class DatabaseView(PanoramixModelView, DeleteMixin):
|
||||
@ -284,7 +284,7 @@ class DruidDatasourceModelView(PanoramixModelView, DeleteMixin):
|
||||
'created_by', 'created_on',
|
||||
'changed_by_', 'changed_on',
|
||||
'offset']
|
||||
related_views = [DruidColumnInlineView, MetricInlineView]
|
||||
related_views = [DruidColumnInlineView, DruidMetricInlineView]
|
||||
edit_columns = [
|
||||
'datasource_name', 'cluster', 'description', 'owner',
|
||||
'is_featured', 'is_hidden', 'default_endpoint', 'offset']
|
||||
|
Loading…
Reference in New Issue
Block a user