diff --git a/app/models/filter.rb b/app/models/filter.rb index 63d0555ab..4dbd12eed 100644 --- a/app/models/filter.rb +++ b/app/models/filter.rb @@ -10,7 +10,7 @@ class Filter < ApplicationRecord filter.save! filter rescue ActiveRecord::RecordNotUnique - find_by!(params: filter.params).tap(&:touch) # possible thanks to denormalized params + find_by!(params: filter.params).tap(&:touch) end end diff --git a/app/models/filter/resources.rb b/app/models/filter/resources.rb index 7708b33e8..399c9d271 100644 --- a/app/models/filter/resources.rb +++ b/app/models/filter/resources.rb @@ -16,8 +16,9 @@ module Filter::Resources private # `denormalize_resource_ids` stores resource ids in the params column to - # 1) enforce uniqueness via db constraints - # 2) easily turn all filter params into a query string + # 1) Enforce uniqueness via db constraints + # 2) Look up identical filters by a single column + # 3) Easily turn all filter params into a query string def denormalize_resource_ids params["bucket_ids"] = buckets.ids params["tag_ids"] = tags.ids