mirror of
https://github.com/apache/superset.git
synced 2024-09-18 03:29:38 -04:00
fix: dashboard iframe to markdown db migration (#11845)
* fix: dashboard iframe to markdown db migration * Update superset/migrations/versions/978245563a02_migrate_iframe_to_dash_markdown.py Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com> Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com>
This commit is contained in:
parent
a5af2ade0a
commit
ac9761c730
@ -132,6 +132,7 @@ def upgrade():
|
|||||||
# find iframe chart position in metadata
|
# find iframe chart position in metadata
|
||||||
# and replace it with markdown component
|
# and replace it with markdown component
|
||||||
position_dict = json.loads(dashboard.position_json or "{}")
|
position_dict = json.loads(dashboard.position_json or "{}")
|
||||||
|
keys_to_remove = []
|
||||||
for key, chart_position in position_dict.items():
|
for key, chart_position in position_dict.items():
|
||||||
if (
|
if (
|
||||||
chart_position
|
chart_position
|
||||||
@ -145,7 +146,7 @@ def upgrade():
|
|||||||
markdown = create_new_markdown_component(
|
markdown = create_new_markdown_component(
|
||||||
chart_position, iframe_urls[iframe_id]
|
chart_position, iframe_urls[iframe_id]
|
||||||
)
|
)
|
||||||
position_dict.pop(key)
|
keys_to_remove.append(key)
|
||||||
position_dict[markdown["id"]] = markdown
|
position_dict[markdown["id"]] = markdown
|
||||||
|
|
||||||
# add markdown to layout tree
|
# add markdown to layout tree
|
||||||
@ -154,11 +155,11 @@ def upgrade():
|
|||||||
children.remove(key)
|
children.remove(key)
|
||||||
children.append(markdown["id"])
|
children.append(markdown["id"])
|
||||||
|
|
||||||
|
if keys_to_remove:
|
||||||
|
for key_to_remove in keys_to_remove:
|
||||||
|
del position_dict[key_to_remove]
|
||||||
dashboard.position_json = json.dumps(
|
dashboard.position_json = json.dumps(
|
||||||
position_dict,
|
position_dict, indent=None, separators=(",", ":"), sort_keys=True,
|
||||||
indent=None,
|
|
||||||
separators=(",", ":"),
|
|
||||||
sort_keys=True,
|
|
||||||
)
|
)
|
||||||
session.merge(dashboard)
|
session.merge(dashboard)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user