Gibt es eine Möglichkeit, dass ich diese Abfrage in verschiedenen Teilen aufteilen und so aufbauen kann, wie ich es brauche. Ich brauche verschiedene Teile davon.Wie man eine große Ecto.Query in kleineren Stücken bricht?
Abfrage funktioniert gut, aber kopieren und einfügen nur um verschiedene Teile zu ändern ist nicht sehr sauber Ansatz. Ich habe mit #
für die Blöcke gezeigt, die ich wiederverwenden muss.
def by_id(user_id, company_id, asset_id) do
# section 1
from a in Asset,
# section 2
join: acl in AccessList, on: acl.asset_id == a.id,
join: c in Company, on: acl.company_id == c.id,
join: u in User, on: acl.user_id == u.id,
# section 3
where: u.id == ^user_id and c.id == ^company_id
# section 4
and a.id == ^asset_id,
# section 5
select: %{
asset_name: a.asset_name,
asset_id: a.id,
inserted_at: a.inserted_at
},
# section 6
group_by: a.id,
# section 6
order_by: a.id
end
Sie haben die Frage vollständig geändert, nachdem sie beantwortet wurde: Dies ist durch Regeln von SO nicht zulässig. Bitte wandle die Frage zurück in ihre Originalversion und stelle eine andere Frage, falls du welche hast. Der Zweck dieses Dienstes ist es, Ihnen nicht persönlich zu helfen, sondern eine Wissensbasis aufzubauen. Bearbeiten von Fragen, die bereits Antworten erhalten, ist für die zukünftigen Leser ziemlich irreführend. – mudasobwa
Messepunkt. Erledigt. Danke für die Erinnerung –