fix: invalid dataset schema (#20826)

This commit is contained in:
Yongjie Zhao
2022-07-23 08:34:15 +08:00
committed by GitHub
parent 4ffa3c22d1
commit 3fb5c79d77
2 changed files with 4 additions and 2 deletions

View File

@@ -28,7 +28,7 @@ from flask_appbuilder import permission_name
from flask_appbuilder.api import expose, protect, rison, safe
from flask_appbuilder.hooks import before_request
from flask_appbuilder.models.sqla.interface import SQLAInterface
from flask_babel import ngettext
from flask_babel import gettext, ngettext
from marshmallow import ValidationError
from werkzeug.wrappers import Response as WerkzeugResponse
from werkzeug.wsgi import FileWrapper
@@ -383,6 +383,8 @@ class DashboardRestApi(BaseSupersetModelRestApi):
self.dashboard_dataset_schema.dump(dataset) for dataset in datasets
]
return self.response(200, result=result)
except TypeError:
return self.response_400(message=gettext("Dataset schema is invalid."))
except DashboardAccessDeniedError:
return self.response_403()
except DashboardNotFoundError:

View File

@@ -206,7 +206,7 @@ class DashboardDatasetSchema(Schema):
health_check_message = fields.Str()
fetch_values_predicate = fields.Str()
template_params = fields.Str()
owners = fields.List(fields.Int())
owners = fields.List(fields.Dict())
columns = fields.List(fields.Dict())
column_types = fields.List(fields.Int())
metrics = fields.List(fields.Dict())