From a7465b3a98fb2236370c56b2faabb5677b6157cf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Atte=20Kein=C3=A4nen?= <atte.keinanen@gmail.com>
Date: Tue, 2 May 2017 17:30:56 -0700
Subject: [PATCH] Have a correct url and show the lineage correctly

---
 frontend/src/metabase/query_builder/actions.js | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/frontend/src/metabase/query_builder/actions.js b/frontend/src/metabase/query_builder/actions.js
index 4eb8d420800..3390ab934e4 100644
--- a/frontend/src/metabase/query_builder/actions.js
+++ b/frontend/src/metabase/query_builder/actions.js
@@ -160,15 +160,15 @@ export const initializeQB = createThunkAction(INITIALIZE_QB, (location, params)
                 card = serializedCard ? deserializeCardFromUrl(serializedCard) : {}
 
                 // load the card either from `cardId` parameter or the serialized card
-                const cardId = params.cardId || card.id
-                if (cardId) {
-                    const loadedCard = await loadCard(cardId);
-
+                if (params.cardId) {
+                    card = await loadCard(params.cardId);
                     // when we are loading from a card id we want an explicit clone of the card we loaded which is unmodified
-                    originalCard = Utils.copy(loadedCard);
-
-                    // the serialized card often differs from the card stored in db so merge the properties to fetched card if needed
-                    card = {...loadedCard, ...card};
+                    originalCard = Utils.copy(card);
+                } else if (card.id) {
+                    // deserialized card contains the card id, so just populate originalCard
+                    originalCard = await loadCard(card.id);
+                    // strip the card id from the deserialized card so that we have a correct url and show lineage correctly
+                    card = _.omit(card, "id");
                 }
 
                 MetabaseAnalytics.trackEvent("QueryBuilder", "Query Loaded", card.dataset_query.type);
-- 
GitLab