diff --git a/superset/models/dashboard.py b/superset/models/dashboard.py index 98baa83278208..e8f53dddb5846 100644 --- a/superset/models/dashboard.py +++ b/superset/models/dashboard.py @@ -154,8 +154,8 @@ class Dashboard(AuditMixinNullable, ImportExportMixin, Model): secondary="tagged_object", primaryjoin="and_(Dashboard.id == TaggedObject.object_id, " "TaggedObject.object_type == 'dashboard')", - secondaryjoin="and_(TaggedObject.tag_id == Tag.id)", - passive_deletes=True, + secondaryjoin="TaggedObject.tag_id == Tag.id", + viewonly=True, # cascading deletion already handled by superset.tags.models.ObjectUpdater.after_delete ) published = Column(Boolean, default=False) is_managed_externally = Column(Boolean, nullable=False, default=False) diff --git a/superset/models/slice.py b/superset/models/slice.py index e4c6a35ae870c..c30e643b7df24 100644 --- a/superset/models/slice.py +++ b/superset/models/slice.py @@ -106,8 +106,8 @@ class Slice( # pylint: disable=too-many-public-methods overlaps="objects,tag,tags", primaryjoin="and_(Slice.id == TaggedObject.object_id, " "TaggedObject.object_type == 'chart')", - secondaryjoin="and_(TaggedObject.tag_id == Tag.id)", - passive_deletes=True, + secondaryjoin="TaggedObject.tag_id == Tag.id", + viewonly=True, # cascading deletion already handled by superset.tags.models.ObjectUpdater.after_delete ) table = relationship( "SqlaTable", diff --git a/superset/models/sql_lab.py b/superset/models/sql_lab.py index 4abed734369bb..6f25a5a66058c 100644 --- a/superset/models/sql_lab.py +++ b/superset/models/sql_lab.py @@ -418,8 +418,8 @@ class SavedQuery( overlaps="objects,tag,tags", primaryjoin="and_(SavedQuery.id == TaggedObject.object_id, " "TaggedObject.object_type == 'query')", - secondaryjoin="and_(TaggedObject.tag_id == Tag.id)", - passive_deletes=True, + secondaryjoin="TaggedObject.tag_id == Tag.id", + viewonly=True, # cascading deletion already handled by superset.tags.models.ObjectUpdater.after_delete ) export_parent = "database"