mirror of
https://github.com/ash-project/ash.git
synced 2024-09-20 13:33:20 +12:00
fix: ensure we only take unique related records when lazy loading
This commit is contained in:
parent
1c7babd2b4
commit
75ca760c9f
1 changed files with 3 additions and 0 deletions
|
@ -512,8 +512,11 @@ defmodule Ash.Actions.Load do
|
|||
|
||||
defp lazy_load_or(data, lazy?, relationship, api, related_query, request_opts, func) do
|
||||
if lazy? && Ash.Resource.Info.loaded?(data, relationship) do
|
||||
pkey = Ash.Resource.Info.primary_key(related_query.resource)
|
||||
|
||||
data
|
||||
|> get_related(relationship)
|
||||
|> Enum.uniq_by(&Map.take(&1, pkey))
|
||||
|> api.load(related_query,
|
||||
lazy?: true,
|
||||
authorize?: request_opts[:authorize?],
|
||||
|
|
Loading…
Reference in a new issue