in meinem Controller habe ich current_company
und `current_user. Der Benutzer muss die aktuelle Firma mit jeder Anfrage senden.DRYing der Controller in Phoenix
Also dachte ich, der Benutzer muss es in der Kopfzeile senden.
so in einer Anfrage habe ich Token (JWT) und Firma. Jetzt in meinem Controller habe ich
def action(conn, _) do
apply(__MODULE__, action_name(conn),
[conn, conn.params, conn.assigns.current_user])
end
den ich die current_user
dann in meiner Funktion Anruf am Extrahieren: def show(conn, %{"id" => id}, current_user) do
Ich benutze es, jetzt muß ich company = conn.assigns.current_company
nutzen, um aktuelle Unternehmen in jeder Funktion zu erhalten.
Alle funktionieren gut, ich wollte sehen, ob es eine DRY-Lösung gibt, wie die, die ich für den current_user gemacht habe, also muss ich nicht alles über meinen Controller wiederholen.
Dank
Fügen Sie einfach 'conn.assigns.current_company' hinzu, wenn Sie' apply' aufrufen? – Dogbert
Meinst du das so: 'apply (__ MODUL__, aktionsname (conn), [conn, conn.params, conn.assigns.current_user, conn.assigns.current_company]'? –
Ja, funktioniert es nicht für dich? – Dogbert