feix: optimize queries for groups
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
Simon 2026-01-29 15:22:21 +01:00
parent 124ab295a6
commit 9feb6a47aa
Signed by: simon
GPG key ID: 40E7A58C4AA1EDB2
4 changed files with 69 additions and 15 deletions

View file

@ -38,7 +38,16 @@ defmodule MvWeb.GroupLive.Show do
end
defp load_group_by_slug(socket, slug, actor) do
case Membership.get_group_by_slug(slug, actor: actor, load: [:members, :member_count]) do
# Load group with members and member_count
# Using explicit load ensures efficient preloading of members relationship
require Ash.Query
query =
Mv.Membership.Group
|> Ash.Query.filter(slug == ^slug)
|> Ash.Query.load([:members, :member_count])
case Ash.read_one(query, actor: actor, domain: Mv.Membership) do
{:ok, nil} ->
{:noreply,
socket