From 6ec4b1d5e5eb85702e5ad4f2c03cf94064eb7168 Mon Sep 17 00:00:00 2001
From: Tim Macdonald <tim@metabase.com>
Date: Thu, 23 Feb 2023 14:59:14 +0000
Subject: [PATCH] Add model_id  to action search results so that URLs can be
 made (#28566)

* Add `model_id` to action search results so that URLs can be made

[Fixes #28565]

* Fix typo in Cypress filename
---
 ...{search-typehead.cy.spec.js => search-typeahead.cy.spec.js} | 0
 src/metabase/api/search.clj                                    | 1 +
 src/metabase/search/config.clj                                 | 3 ++-
 test/metabase/api/search_test.clj                              | 3 ++-
 4 files changed, 5 insertions(+), 2 deletions(-)
 rename frontend/test/metabase/scenarios/onboarding/search/{search-typehead.cy.spec.js => search-typeahead.cy.spec.js} (100%)

diff --git a/frontend/test/metabase/scenarios/onboarding/search/search-typehead.cy.spec.js b/frontend/test/metabase/scenarios/onboarding/search/search-typeahead.cy.spec.js
similarity index 100%
rename from frontend/test/metabase/scenarios/onboarding/search/search-typehead.cy.spec.js
rename to frontend/test/metabase/scenarios/onboarding/search/search-typeahead.cy.spec.js
diff --git a/src/metabase/api/search.clj b/src/metabase/api/search.clj
index 509be9c802a..9ee3c18a253 100644
--- a/src/metabase/api/search.clj
+++ b/src/metabase/api/search.clj
@@ -91,6 +91,7 @@
    ;; returned for Database and Table
    :initial_sync_status :text
    ;; returned for Action
+   :model_id            :integer
    :model_name          :text))
 
 ;;; +----------------------------------------------------------------------------------------------------------------+
diff --git a/src/metabase/search/config.clj b/src/metabase/search/config.clj
index af3ca2474f0..93c4e2ccc7a 100644
--- a/src/metabase/search/config.clj
+++ b/src/metabase/search/config.clj
@@ -133,7 +133,8 @@
   [_]
   (conj default-columns :model_id
         [:model.collection_id :collection_id]
-        [:model.name :model_name]))
+        [:model.id            :model_id]
+        [:model.name          :model_name]))
 
 (defmethod columns-for-model "card"
   [_]
diff --git a/test/metabase/api/search_test.clj b/test/metabase/api/search_test.clj
index d295b42bce8..b4d4c6aa7ba 100644
--- a/test/metabase/api/search_test.clj
+++ b/test/metabase/api/search_test.clj
@@ -54,6 +54,7 @@
    :description                nil
    :id                         true
    :initial_sync_status        nil
+   :model_id                   false
    :model_name                 nil
    :moderated_status           nil
    :table_description          nil
@@ -94,7 +95,7 @@
     test-collection
     (make-result "card test card", :model "card", :bookmark false, :dataset_query nil, :dashboardcard_count 0)
     (make-result "dataset test dataset", :model "dataset", :bookmark false, :dataset_query nil, :dashboardcard_count 0)
-    (make-result "action test action", :model "action", :model_name (:name action-model-params))
+    (make-result "action test action", :model "action", :model_name (:name action-model-params), :model_id true)
     (merge
      (make-result "metric test metric", :model "metric", :description "Lookin' for a blueberry")
      (table-search-results))
-- 
GitLab