Fix datatable rendering (#1360)

This commit is contained in:
Thomas Brandého 2023-07-21 20:23:51 +02:00 committed by GitHub
parent 723105d8bb
commit 9510c58296
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -101,25 +101,22 @@ class DataTable(Gridjs):
def _render(self) -> Tag: def _render(self) -> Tag:
if isinstance(self.data, Var): if isinstance(self.data, Var):
self.columns = BaseVar( if types.is_dataframe(self.data.type_):
name=f"{self.data.name}.columns" self.columns = BaseVar(
if types.is_dataframe(self.data.type_) name=f"{self.data.name}.columns",
else f"{self.columns.name}", type_=List[Any],
type_=List[Any], state=self.data.state,
state=self.data.state, )
) self.data = BaseVar(
self.data = BaseVar( name=f"{self.data.name}.data",
name=f"{self.data.name}.data" type_=List[List[Any]],
if types.is_dataframe(self.data.type_) state=self.data.state,
else f"{self.data.name}", )
type_=List[List[Any]], else:
state=self.data.state, # If given a pandas df break up the data and columns
) if types.is_dataframe(type(self.data)):
self.columns = Var.create(list(self.data.columns.values.tolist())) # type: ignore
# If given a pandas df break up the data and columns self.data = Var.create(format.format_dataframe_values(self.data)) # type: ignore
if types.is_dataframe(type(self.data)):
self.columns = Var.create(list(self.data.columns.values.tolist())) # type: ignore
self.data = Var.create(format.format_dataframe_values(self.data)) # type: ignore
# Render the table. # Render the table.
return super()._render() return super()._render()