mirror of
https://github.com/ash-project/ash.git
synced 2024-09-20 13:33:20 +12:00
parent
53a3d6fb62
commit
6340014e8b
3 changed files with 18 additions and 6 deletions
|
@ -458,6 +458,16 @@ defmodule Ash.Changeset do
|
||||||
end
|
end
|
||||||
|
|
||||||
@doc false
|
@doc false
|
||||||
|
def set_action_select(%{action: nil} = changeset) do
|
||||||
|
%{
|
||||||
|
changeset
|
||||||
|
| action_select:
|
||||||
|
MapSet.to_list(
|
||||||
|
Ash.Resource.Info.selected_by_default_attribute_names(changeset.resource)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
def set_action_select(changeset) do
|
def set_action_select(changeset) do
|
||||||
required =
|
required =
|
||||||
Ash.Resource.Info.action_select(changeset.resource, changeset.action.name) || []
|
Ash.Resource.Info.action_select(changeset.resource, changeset.action.name) || []
|
||||||
|
|
|
@ -414,10 +414,12 @@ defmodule Ash.Resource.Igniter do
|
||||||
{:ok, _zipper} <-
|
{:ok, _zipper} <-
|
||||||
Igniter.Code.List.move_to_list_item(zipper, fn zipper ->
|
Igniter.Code.List.move_to_list_item(zipper, fn zipper ->
|
||||||
if Igniter.Code.Tuple.tuple?(zipper) do
|
if Igniter.Code.Tuple.tuple?(zipper) do
|
||||||
with {:ok, zipper} <- Igniter.Code.Tuple.tuple_elem(zipper, 0) do
|
case Igniter.Code.Tuple.tuple_elem(zipper, 0) do
|
||||||
Igniter.Code.Common.nodes_equal?(zipper, type)
|
{:ok, zipper} ->
|
||||||
else
|
Igniter.Code.Common.nodes_equal?(zipper, type)
|
||||||
_ -> false
|
|
||||||
|
_ ->
|
||||||
|
false
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
Igniter.Code.Common.nodes_equal?(zipper, type)
|
Igniter.Code.Common.nodes_equal?(zipper, type)
|
||||||
|
|
|
@ -165,13 +165,13 @@ defmodule Ash.Seed do
|
||||||
|
|
||||||
defp create_via_data_layer(changeset) do
|
defp create_via_data_layer(changeset) do
|
||||||
Ash.Changeset.with_hooks(changeset, fn changeset ->
|
Ash.Changeset.with_hooks(changeset, fn changeset ->
|
||||||
Ash.DataLayer.create(changeset.resource, changeset)
|
Ash.DataLayer.create(changeset.resource, Ash.Changeset.set_action_select(changeset))
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
defp update_via_data_layer(changeset) do
|
defp update_via_data_layer(changeset) do
|
||||||
Ash.Changeset.with_hooks(changeset, fn changeset ->
|
Ash.Changeset.with_hooks(changeset, fn changeset ->
|
||||||
Ash.DataLayer.update(changeset.resource, changeset)
|
Ash.DataLayer.update(changeset.resource, Ash.Changeset.set_action_select(changeset))
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue