From db5f9ce243b382d178661874e9b7b8ed545db09b Mon Sep 17 00:00:00 2001 From: BrokenEagle Date: Wed, 6 Jan 2021 20:14:28 +0000 Subject: [PATCH] Support multiple excludes for enum types It's not possible to pass it off to search_numeric_attribute directly since the column "category" does not match the prefix "category_id". --- app/logical/concerns/searchable.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/logical/concerns/searchable.rb b/app/logical/concerns/searchable.rb index d2b4a0baa..245de2545 100644 --- a/app/logical/concerns/searchable.rb +++ b/app/logical/concerns/searchable.rb @@ -329,6 +329,8 @@ module Searchable relation = relation.where(name => value) elsif params["#{name}_id"].present? relation = relation.numeric_attribute_matches(name, params["#{name}_id"]) + elsif params["#{name}_id_not"].present? + relation = relation.where.not(id: relation.numeric_attribute_matches(name, params["#{name}_id_not"])) end relation