mirror of
https://github.com/ash-project/ash_phoenix.git
synced 2024-09-20 07:12:49 +12:00
fix: don't validate values that aren't maps
This commit is contained in:
parent
2e061428a4
commit
7b9f3070a6
1 changed files with 136 additions and 120 deletions
|
@ -937,6 +937,7 @@ defmodule AshPhoenix.Form do
|
|||
form_params || %{}
|
||||
end
|
||||
|
||||
if values_are_maps(form_params) do
|
||||
new_forms =
|
||||
Enum.reduce(form_params, forms, fn {index, params}, forms ->
|
||||
case Enum.find(form.forms[key] || [], &matcher.(&1, params, form, key, index)) do
|
||||
|
@ -1036,6 +1037,10 @@ defmodule AshPhoenix.Form do
|
|||
|
||||
{new_forms, new_params}
|
||||
else
|
||||
{forms, params}
|
||||
end
|
||||
else
|
||||
if is_map(form_params) do
|
||||
new_forms =
|
||||
if form.forms[key] do
|
||||
new_form =
|
||||
|
@ -1078,6 +1083,9 @@ defmodule AshPhoenix.Form do
|
|||
)
|
||||
|
||||
{new_forms, new_params}
|
||||
else
|
||||
{forms, params}
|
||||
end
|
||||
end
|
||||
|
||||
_ ->
|
||||
|
@ -1222,6 +1230,14 @@ defmodule AshPhoenix.Form do
|
|||
end)
|
||||
end
|
||||
|
||||
defp values_are_maps(map) when is_map(map) do
|
||||
map
|
||||
|> Map.values()
|
||||
|> Enum.all?(&is_map/1)
|
||||
end
|
||||
|
||||
defp values_are_maps(_), do: false
|
||||
|
||||
@submit_opts [
|
||||
force?: [
|
||||
type: :boolean,
|
||||
|
|
Loading…
Reference in a new issue