From 08947fa76433d18988aa1ee1d929bd8320c75fe2 Mon Sep 17 00:00:00 2001 From: Simon Willison Date: Sat, 20 Nov 2021 11:03:08 -0800 Subject: [PATCH] Fix more broken base_url links Refs #1519, #838 --- datasette/facets.py | 10 +++++----- datasette/views/table.py | 2 +- tests/test_html.py | 1 + 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/datasette/facets.py b/datasette/facets.py index 9a43b95e..29923ef7 100644 --- a/datasette/facets.py +++ b/datasette/facets.py @@ -225,8 +225,8 @@ class ColumnFacet(Facet): "name": column, "type": self.type, "hideable": source != "metadata", - "toggle_url": path_with_removed_args( - self.request, {"_facet": column} + "toggle_url": ds.urls.path( + path_with_removed_args(self.request, {"_facet": column}) ), "results": facet_results_values, "truncated": len(facet_rows_results) > facet_size, @@ -259,7 +259,7 @@ class ColumnFacet(Facet): "label": expanded.get((column, row["value"]), row["value"]), "count": row["count"], "toggle_url": self.ds.absolute_url( - self.request, toggle_path + self.request, self.ds.urls.path(toggle_path) ), "selected": selected, } @@ -397,8 +397,8 @@ class ArrayFacet(Facet): "type": self.type, "results": facet_results_values, "hideable": source != "metadata", - "toggle_url": path_with_removed_args( - self.request, {"_facet_array": column} + "toggle_url": self.ds.urls.path( + path_with_removed_args(self.request, {"_facet_array": column}) ), "truncated": len(facet_rows_results) > facet_size, } diff --git a/datasette/views/table.py b/datasette/views/table.py index 66447aa0..1960f455 100644 --- a/datasette/views/table.py +++ b/datasette/views/table.py @@ -839,7 +839,7 @@ class TableView(RowTableShared): else: added_args = {"_next": next_value} next_url = self.ds.absolute_url( - request, path_with_replaced_args(request, added_args) + request, self.ds.urls.path(path_with_replaced_args(request, added_args)) ) rows = rows[:page_size] diff --git a/tests/test_html.py b/tests/test_html.py index 3301b91d..68508d75 100644 --- a/tests/test_html.py +++ b/tests/test_html.py @@ -1614,6 +1614,7 @@ def test_metadata_sort_desc(app_client): "/fixtures/compound_three_primary_keys/a,a,a", "/fixtures/paginated_view", "/fixtures/facetable", + "/fixtures/facetable?_facet=state", "/fixtures?sql=select+1", ], )