diff --git a/superset-frontend/src/views/datasetList/DatasetList.tsx b/superset-frontend/src/views/datasetList/DatasetList.tsx index a5da58a18f..a0fcfd6c8f 100644 --- a/superset-frontend/src/views/datasetList/DatasetList.tsx +++ b/superset-frontend/src/views/datasetList/DatasetList.tsx @@ -54,7 +54,10 @@ type Dataset = { changed_by_url: string; changed_by: string; changed_on_delta_humanized: string; - database_name: string; + database: { + id: string; + database_name: string; + }; explore_url: string; id: number; owners: Array; @@ -275,8 +278,7 @@ const DatasetList: FunctionComponent = ({ }, { Header: t('Source'), - accessor: 'database_name', - disableSortBy: true, + accessor: 'database.database_name', size: 'lg', }, { diff --git a/superset/connectors/sqla/models.py b/superset/connectors/sqla/models.py index f571cbc5a0..249409681b 100644 --- a/superset/connectors/sqla/models.py +++ b/superset/connectors/sqla/models.py @@ -493,10 +493,6 @@ class SqlaTable( # pylint: disable=too-many-public-methods,too-many-instance-at def datasource_name(self) -> str: return self.table_name - @property - def database_name(self) -> str: - return self.database.name - @classmethod def get_datasource_by_name( cls, diff --git a/superset/datasets/api.py b/superset/datasets/api.py index 34d08d5fe7..eee5e33947 100644 --- a/superset/datasets/api.py +++ b/superset/datasets/api.py @@ -72,8 +72,8 @@ class DatasetRestApi(BaseSupersetModelRestApi): } list_columns = [ "id", - "database_id", - "database_name", + "database.id", + "database.database_name", "changed_by_name", "changed_by_url", "changed_by.first_name", @@ -97,6 +97,7 @@ class DatasetRestApi(BaseSupersetModelRestApi): "schema", "changed_by.first_name", "changed_on_delta_humanized", + "database.database_name", ] show_columns = [ "database.database_name", diff --git a/superset/models/slice.py b/superset/models/slice.py index 30f56cad8d..b7f9e05373 100644 --- a/superset/models/slice.py +++ b/superset/models/slice.py @@ -269,7 +269,7 @@ class Slice( @property def changed_by_url(self) -> str: - return f"/superset/profile/{self.created_by.username}" # type: ignore + return f"/superset/profile/{self.changed_by.username}" # type: ignore @property def icons(self) -> str: diff --git a/tests/datasets/api_tests.py b/tests/datasets/api_tests.py index d5bf9b043e..0710b9d064 100644 --- a/tests/datasets/api_tests.py +++ b/tests/datasets/api_tests.py @@ -92,8 +92,7 @@ class TestDatasetApi(SupersetTestCase): "changed_by_url", "changed_on_delta_humanized", "changed_on_utc", - "database_id", - "database_name", + "database", "default_endpoint", "explore_url", "id",