diff --git a/src/metabase/api/app.clj b/src/metabase/api/app.clj index aaa6ee58cbd12928f7422c905ae7a3d17ba2d943..c7bff708d44bb799eb8587bf7a40b8aaa9cfcd3d 100644 --- a/src/metabase/api/app.clj +++ b/src/metabase/api/app.clj @@ -211,7 +211,8 @@ _ (when (not= 1 (count pks)) (throw (ex-info (i18n/tru "Table must have a single primary key: {0}" (:name table)) {:status-code 400}))) - pk-field-name (u/slugify (:name (first pks)))] + pk-field (first pks) + pk-field-name (u/slugify (:name pk-field))] page-type ["list" "detail"]] (cond-> {:name (format "%s %s" @@ -225,8 +226,8 @@ {"type" "link" "linkType" "page" "parameterMapping" {(str "scaffold_" table-id) {"source" {"type" "column", - "id" "ID", - "name" "ID"}, + "id" (:name pk-field) + "name" (:name pk-field)}, "target" {"type" "parameter", "id" (str "scaffold_" table-id)}, "id" (str "scaffold_" table-id)}} @@ -239,7 +240,7 @@ [{:size_y 12 :size_x 18 :row 1 :col 0 :parameter_mappings [{"parameter_id" (str "scaffold_" table-id) "card_id" ["scaffold-target-id" "card" table-id "detail"] - "target" ["variable", ["template-tag", pk-field-name]]}] + "target" ["dimension", ["field", (:id pk-field) nil]]}] :card_id ["scaffold-target-id" "card" table-id "detail"] :scaffold-target ["dashcard" table-id]} {:size_y 1 :size_x 3 :row 0 :col 0