Skip to content

Commit

Permalink
Ensure only one dashboard per user is default
Browse files Browse the repository at this point in the history
  • Loading branch information
johannaengland committed Nov 25, 2024
1 parent 2c061fb commit 49f7513
Showing 1 changed file with 21 additions and 0 deletions.
21 changes: 21 additions & 0 deletions python/nav/models/sql/changes/sc.05.12.0002.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
-- This migration is to ensure that for accounts that have more than one
-- default dashboard we set is_default to false for all except for one

UPDATE account_dashboard
SET is_default = FALSE
WHERE id NOT IN (
-- This part finds the lowest id of the default dashboards for each
-- account_id
SELECT MIN(id)
FROM account_dashboard
WHERE is_default = TRUE
GROUP BY account_id
)
AND account_id IN (
-- This part finds all account_ids that have more than one default dashboard
SELECT account_id
FROM account_dashboard
WHERE is_default = TRUE
GROUP BY account_id
HAVING COUNT(account_id) > 1
)

0 comments on commit 49f7513

Please sign in to comment.