Skip to content

Commit

Permalink
Fixing REST api and unsortable columns
Browse files Browse the repository at this point in the history
  • Loading branch information
mistercrunch committed Mar 6, 2016
1 parent 1e27f03 commit ee025b3
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 12 deletions.
8 changes: 2 additions & 6 deletions panoramix/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,15 +44,11 @@ def changed_by_fk(cls):
return Column(Integer, ForeignKey('ab_user.id'),
default=cls.get_user_id, onupdate=cls.get_user_id, nullable=True)
@property
def changed_on_(cls):
return utils.datetime_f(cls.changed_on)
@property
def created_by_(self):
return self.created_by or ''
return '{}'.format(self.created_by or '')
@property
def changed_by_(self):
return self.changed_by or ''

return '{}'.format(self.changed_by or '')


class Url(Model, AuditMixinNullable):
Expand Down
9 changes: 8 additions & 1 deletion panoramix/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,13 @@ def __get__(self, obj, objtype):
"""Support instance methods."""
return functools.partial(self.__call__, obj)

def list_minus(l, minus):
"""Returns l without what is in minus
>>> list_without([1, 2, 3], [2])
[1, 3]
"""
return [o for o in l if o not in minus]

def parse_human_datetime(s):
"""
Expand Down Expand Up @@ -233,7 +240,7 @@ def datetime_f(dttm):
dttm = dttm[11:]
elif now_iso[:4] == dttm[:4]:
dttm = dttm[5:]
return Markup("<nobr>{}</nobr>".format(dttm))
return "<nobr>{}</nobr>".format(dttm)


def json_iso_dttm_ser(obj):
Expand Down
15 changes: 10 additions & 5 deletions panoramix/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,8 @@ class DruidMetricInlineView(CompactCRUDMixin, PanoramixModelView):

class DatabaseView(PanoramixModelView, DeleteMixin):
datamodel = SQLAInterface(models.Database)
list_columns = ['database_name', 'sql_link', 'created_by', 'changed_on_']
list_columns = ['database_name', 'sql_link', 'created_by_', 'changed_on']
order_columns = utils.list_minus(list_columns, ['created_by_'])
add_columns = ['database_name', 'sqlalchemy_uri']
search_exclude_columns = ('password',)
edit_columns = add_columns
Expand Down Expand Up @@ -151,7 +152,7 @@ class TableModelView(PanoramixModelView, DeleteMixin):
datamodel = SQLAInterface(models.SqlaTable)
list_columns = [
'table_link', 'database', 'sql_link', 'is_featured',
'changed_by_', 'changed_on_']
'changed_by_', 'changed_on']
add_columns = ['table_name', 'database', 'default_endpoint', 'offset']
edit_columns = [
'table_name', 'is_featured', 'database', 'description', 'owner',
Expand Down Expand Up @@ -210,7 +211,8 @@ class SliceModelView(PanoramixModelView, DeleteMixin):
can_add = False
list_columns = [
'slice_link', 'viz_type',
'datasource_link', 'created_by_', 'changed_on_']
'datasource_link', 'created_by_', 'changed_on']
order_columns = utils.list_minus(list_columns, ['created_by_'])
edit_columns = [
'slice_name', 'description', 'viz_type', 'druid_datasource',
'table', 'dashboards', 'params']
Expand All @@ -234,7 +236,8 @@ class SliceModelView(PanoramixModelView, DeleteMixin):

class DashboardModelView(PanoramixModelView, DeleteMixin):
datamodel = SQLAInterface(models.Dashboard)
list_columns = ['dashboard_link', 'created_by_', 'changed_on_']
list_columns = ['dashboard_link', 'created_by_', 'changed_on']
order_columns = utils.list_minus(list_columns, ['created_by_'])
edit_columns = [
'dashboard_title', 'slug', 'slices', 'position_json', 'css',
'json_metadata']
Expand Down Expand Up @@ -287,9 +290,11 @@ class DruidDatasourceModelView(PanoramixModelView, DeleteMixin):
datamodel = SQLAInterface(models.DruidDatasource)
list_columns = [
'datasource_link', 'cluster', 'owner',
'created_by', 'created_on',
'created_by_', 'created_on',
'changed_by_', 'changed_on',
'offset']
order_columns = utils.list_minus(
list_columns, ['created_by_', 'changed_by_'])
related_views = [DruidColumnInlineView, DruidMetricInlineView]
edit_columns = [
'datasource_name', 'cluster', 'description', 'owner',
Expand Down

0 comments on commit ee025b3

Please sign in to comment.