mirror of https://github.com/apache/superset.git
fix: dashboard endpoint sig changed (#10220)
* fix(thumbnails): dashboard endpoint sig changed * fix, flask get url for Superset.dashboard * add simple test
This commit is contained in:
parent
e94c9804a2
commit
6224edd42d
|
@ -530,7 +530,7 @@ def compute_thumbnails(
|
|||
"Superset.slice", slice_id=model.id, standalone="true"
|
||||
)
|
||||
else:
|
||||
url = get_url_path("Superset.dashboard", dashboard_id=model.id)
|
||||
url = get_url_path("Superset.dashboard", dashboard_id_or_slug=model.id)
|
||||
func(url, model.digest, force=force)
|
||||
|
||||
if not charts_only:
|
||||
|
|
|
@ -510,7 +510,9 @@ class DashboardRestApi(BaseSupersetModelRestApi):
|
|||
if not dashboard:
|
||||
return self.response_404()
|
||||
|
||||
dashboard_url = get_url_path("Superset.dashboard", dashboard_id=dashboard.id)
|
||||
dashboard_url = get_url_path(
|
||||
"Superset.dashboard", dashboard_id_or_slug=dashboard.id
|
||||
)
|
||||
# If force, request a screenshot from the workers
|
||||
if kwargs["rison"].get("force", False):
|
||||
cache_dashboard_thumbnail.delay(dashboard_url, dashboard.digest, force=True)
|
||||
|
|
|
@ -481,7 +481,7 @@ class Dashboard( # pylint: disable=too-many-instance-attributes
|
|||
def event_after_dashboard_changed( # pylint: disable=unused-argument
|
||||
mapper: Mapper, connection: Connection, target: Dashboard
|
||||
) -> None:
|
||||
url = get_url_path("Superset.dashboard", dashboard_id=target.id)
|
||||
url = get_url_path("Superset.dashboard", dashboard_id_or_slug=target.id)
|
||||
cache_dashboard_thumbnail.delay(url, target.digest, force=True)
|
||||
|
||||
|
||||
|
|
|
@ -20,9 +20,8 @@ import json
|
|||
import unittest
|
||||
from random import random
|
||||
|
||||
from flask import escape
|
||||
from flask import escape, url_for
|
||||
from sqlalchemy import func
|
||||
from typing import Dict
|
||||
|
||||
import tests.test_app
|
||||
from superset import db, security_manager
|
||||
|
@ -30,7 +29,6 @@ from superset.connectors.sqla.models import SqlaTable
|
|||
from superset.models import core as models
|
||||
from superset.models.dashboard import Dashboard
|
||||
from superset.models.slice import Slice
|
||||
from superset.views import core as views
|
||||
|
||||
from .base_tests import SupersetTestCase
|
||||
|
||||
|
@ -57,6 +55,9 @@ class TestDashboard(SupersetTestCase):
|
|||
for title, url in urls.items():
|
||||
assert escape(title) in self.client.get(url).data.decode("utf-8")
|
||||
|
||||
def test_superset_dashboard_url(self):
|
||||
url_for("Superset.dashboard", dashboard_id_or_slug=1)
|
||||
|
||||
def test_new_dashboard(self):
|
||||
self.login(username="admin")
|
||||
dash_count_before = db.session.query(func.count(Dashboard.id)).first()[0]
|
||||
|
|
Loading…
Reference in New Issue