diff --git a/superset/views/core.py b/superset/views/core.py index eb63d4882ec8a..50db44055c636 100755 --- a/superset/views/core.py +++ b/superset/views/core.py @@ -258,6 +258,13 @@ def pre_add(self, db): def pre_update(self, db): self.pre_add(db) + def pre_delete(self, obj): + if obj.tables: + raise SupersetException(Markup( + 'Cannot delete a database that has tables attached. ' + "Here's the list of associated tables: " + + ', '.join('{}'.format(o) for o in obj.tables))) + def _delete(self, pk): DeleteMixin._delete(self, pk)