у меня есть 2 модели - User и ApiKey (user has_many api_keys), и я пытаюсь создать условное соединение. Я имею в виду, что я хотел бы загрузить пользователя с одним запросом с его активными ApiKeys. Мой текущий код выглядит так
query = from u in User,
join: a in assoc(u, :api_keys),
where: u.email == ^email,
preload: [api_keys: a]
user = Repo.one(query)
Repo.preload user, api_keys: (from a in ApiKey, where: a.is_active == true)
Но, к сожалению, как я вижу, метод предварительной загрузки не может изменить набор api_keys, когда данные уже предварительно загружены.
Не могли бы вы показать мне хороший пример - как предварительно загрузить только "активные" api_keys?