Skip to content

Commit 261afb3

Browse files
authored
Merge pull request #1466 from gmazzamuto/simplify-MultiSelect
Simplify query function in MultiSelect filter
2 parents 9b4b70b + 6268d88 commit 261afb3

File tree

1 file changed

+2
-12
lines changed

1 file changed

+2
-12
lines changed

lib/backpex/filters/multi_select.ex

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -133,20 +133,10 @@ defmodule Backpex.Filters.MultiSelect do
133133

134134
def query(query, _attribute, [], _assigns), do: query
135135

136-
def query(query, attribute, value, _assigns) do
137-
Enum.reduce(value, nil, fn
138-
v, nil ->
139-
dynamic([x], field(x, ^attribute) == ^v)
140-
141-
v, p ->
142-
dynamic([x], ^p or field(x, ^attribute) == ^v)
143-
end)
144-
|> maybe_query(query)
136+
def query(query, attribute, values, _assigns) do
137+
where(query, [x], field(x, ^attribute) in ^values)
145138
end
146139

147-
def maybe_query(nil, query), do: query
148-
def maybe_query(predicates, query), do: where(query, ^predicates)
149-
150140
def option_value_to_label(options, values) do
151141
Enum.map(values, fn key -> find_option_label(options, key) end)
152142
|> Enum.intersperse(", ")

0 commit comments

Comments
 (0)