You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by jo...@apache.org on 2022/09/13 17:00:37 UTC
[superset] 01/01: Update tags.py
This is an automated email from the ASF dual-hosted git repository.
johnbodley pushed a commit to branch john-bodley--tags-use-db-session
in repository https://gitbox.apache.org/repos/asf/superset.git
commit 5ec5b1e6fbd29adc3bbffb07a2b6b1f149b42d3f
Author: John Bodley <45...@users.noreply.github.com>
AuthorDate: Tue Sep 13 10:00:26 2022 -0700
Update tags.py
---
superset/common/tags.py | 32 ++++++++++++++++----------------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/superset/common/tags.py b/superset/common/tags.py
index 74c882cf92..ccc2c8cdd2 100644
--- a/superset/common/tags.py
+++ b/superset/common/tags.py
@@ -15,14 +15,14 @@
# specific language governing permissions and limitations
# under the License.
from sqlalchemy import Metadata
-from sqlalchemy.engine import Engine
from sqlalchemy.exc import IntegrityError
from sqlalchemy.sql import and_, func, functions, join, literal, select
+from superset.extensions import db
from superset.models.tags import ObjectTypes, TagTypes
-def add_types(engine: Engine, metadata: Metadata) -> None:
+def add_types(metadata: Metadata) -> None:
"""
Tag every object according to its type:
@@ -81,7 +81,7 @@ def add_types(engine: Engine, metadata: Metadata) -> None:
insert = tag.insert()
for type_ in ObjectTypes.__members__:
try:
- engine.execute(insert, name=f"type:{type_}", type=TagTypes.type)
+ db.session.execute(insert, name=f"type:{type_}", type=TagTypes.type)
except IntegrityError:
pass # already exists
@@ -109,7 +109,7 @@ def add_types(engine: Engine, metadata: Metadata) -> None:
.where(tagged_object.c.tag_id.is_(None))
)
query = tagged_object.insert().from_select(columns, charts)
- engine.execute(query)
+ db.session.execute(query)
dashboards = (
select(
@@ -135,7 +135,7 @@ def add_types(engine: Engine, metadata: Metadata) -> None:
.where(tagged_object.c.tag_id.is_(None))
)
query = tagged_object.insert().from_select(columns, dashboards)
- engine.execute(query)
+ db.session.execute(query)
saved_queries = (
select(
@@ -161,10 +161,10 @@ def add_types(engine: Engine, metadata: Metadata) -> None:
.where(tagged_object.c.tag_id.is_(None))
)
query = tagged_object.insert().from_select(columns, saved_queries)
- engine.execute(query)
+ db.session.execute(query)
-def add_owners(engine: Engine, metadata: Metadata) -> None:
+def add_owners(metadata: Metadata) -> None:
"""
Tag every object according to its owner:
@@ -221,9 +221,9 @@ def add_owners(engine: Engine, metadata: Metadata) -> None:
# create a custom tag for each user
ids = select([users.c.id])
insert = tag.insert()
- for (id_,) in engine.execute(ids):
+ for (id_,) in db.session.execute(ids):
try:
- engine.execute(insert, name=f"owner:{id_}", type=TagTypes.owner)
+ db.session.execute(insert, name=f"owner:{id_}", type=TagTypes.owner)
except IntegrityError:
pass # already exists
@@ -255,7 +255,7 @@ def add_owners(engine: Engine, metadata: Metadata) -> None:
.where(tagged_object.c.tag_id.is_(None))
)
query = tagged_object.insert().from_select(columns, charts)
- engine.execute(query)
+ db.session.execute(query)
dashboards = (
select(
@@ -286,7 +286,7 @@ def add_owners(engine: Engine, metadata: Metadata) -> None:
.where(tagged_object.c.tag_id.is_(None))
)
query = tagged_object.insert().from_select(columns, dashboards)
- engine.execute(query)
+ db.session.execute(query)
saved_queries = (
select(
@@ -317,10 +317,10 @@ def add_owners(engine: Engine, metadata: Metadata) -> None:
.where(tagged_object.c.tag_id.is_(None))
)
query = tagged_object.insert().from_select(columns, saved_queries)
- engine.execute(query)
+ db.session.execute(query)
-def add_favorites(engine: Engine, metadata: Metadata) -> None:
+def add_favorites(metadata: Metadata) -> None:
"""
Tag every object that was favorited:
@@ -349,9 +349,9 @@ def add_favorites(engine: Engine, metadata: Metadata) -> None:
# create a custom tag for each user
ids = select([users.c.id])
insert = tag.insert()
- for (id_,) in engine.execute(ids):
+ for (id_,) in db.session.execute(ids):
try:
- engine.execute(insert, name=f"favorited_by:{id_}", type=TagTypes.type)
+ db.session.execute(insert, name=f"favorited_by:{id_}", type=TagTypes.type)
except IntegrityError:
pass # already exists
@@ -383,4 +383,4 @@ def add_favorites(engine: Engine, metadata: Metadata) -> None:
.where(tagged_object.c.tag_id.is_(None))
)
query = tagged_object.insert().from_select(columns, favstars)
- engine.execute(query)
+ db.session.execute(query)