mirror of
https://github.com/ash-project/ash.git
synced 2024-09-19 13:03:02 +12:00
fix: don't clean calc deps that may need to be reused
This commit is contained in:
parent
3c90063c40
commit
82230f1a89
1 changed files with 13 additions and 25 deletions
|
@ -518,11 +518,7 @@ defmodule Ash.Actions.Read.Calculations do
|
|||
record
|
||||
|
||||
record ->
|
||||
{new_val, calculations} = Map.pop(record.calculations, source)
|
||||
|
||||
record
|
||||
|> Map.put(to_load, new_val)
|
||||
|> Map.put(:calculations, calculations)
|
||||
Map.put(record, to_load, Map.get(record.calculations, source))
|
||||
end
|
||||
end)
|
||||
else
|
||||
|
@ -538,11 +534,11 @@ defmodule Ash.Actions.Read.Calculations do
|
|||
record
|
||||
|
||||
record ->
|
||||
{new_val, calculations} = Map.pop(record.calculations, source)
|
||||
|
||||
record
|
||||
|> Map.update!(:calculations, &Map.put(&1, to_name, new_val))
|
||||
|> Map.put(:calculations, calculations)
|
||||
Map.update!(
|
||||
record,
|
||||
:calculations,
|
||||
&Map.put(&1, to_name, Map.get(record.calculations, source))
|
||||
)
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
@ -561,11 +557,7 @@ defmodule Ash.Actions.Read.Calculations do
|
|||
record
|
||||
|
||||
record ->
|
||||
{new_val, aggregates} = Map.pop(record.aggregates, source)
|
||||
|
||||
record
|
||||
|> Map.put(to_load, new_val)
|
||||
|> Map.put(:aggregates, aggregates)
|
||||
Map.put(record, to_load, Map.get(record.aggregates, source))
|
||||
end
|
||||
end)
|
||||
else
|
||||
|
@ -581,11 +573,11 @@ defmodule Ash.Actions.Read.Calculations do
|
|||
record
|
||||
|
||||
record ->
|
||||
{new_val, aggregates} = Map.pop(record.aggregates, source)
|
||||
|
||||
record
|
||||
|> Map.update!(:aggregates, &Map.put(&1, to_name, new_val))
|
||||
|> Map.put(:aggregates, aggregates)
|
||||
Map.update!(
|
||||
record,
|
||||
:aggregates,
|
||||
&Map.put(&1, to_name, Map.get(record.aggregates, source))
|
||||
)
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
@ -593,11 +585,7 @@ defmodule Ash.Actions.Read.Calculations do
|
|||
{{path, {:rel, rel_name}, _, _}, source}, records ->
|
||||
records
|
||||
|> update_at_path(path, fn record ->
|
||||
{new_val, calculations} = Map.pop(record.calculations, source)
|
||||
|
||||
record
|
||||
|> Map.put(rel_name, new_val)
|
||||
|> Map.put(:calculations, calculations)
|
||||
Map.put(record, rel_name, Map.get(record.calculations, source))
|
||||
end)
|
||||
end)
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue