views.py 494 B

123456789101112131415
  1. # pylint: disable=C,R,W
  2. from flask import Markup
  3. from superset.exceptions import SupersetException
  4. from superset.views.base import SupersetModelView
  5. class DatasourceModelView(SupersetModelView):
  6. def pre_delete(self, obj):
  7. if obj.slices:
  8. raise SupersetException(Markup(
  9. 'Cannot delete a datasource that has slices attached to it.'
  10. "Here's the list of associated charts: " +
  11. ''.join([o.slice_link for o in obj.slices])))