でコントローラを乾燥私はcurrent_company
と `CURRENT_USERを持っています。ユーザーはすべてのリクエストに応じて現在の会社を送信する必要があります。私のコントローラでフェニックス
だから私は、ユーザーがヘッダーにそれを送信する必要がある、と思いました。
ので、一つのリクエストで、私はトークン(JWT)と会社を持っています。今、私は、各機能で、現在の会社を得るために company = conn.assigns.current_company
を使用する必要があり、私はそれを使用def show(conn, %{"id" => id}, current_user) do
:今、私のコントローラで私は私の関数呼び出しで、その後current_user
を抽出しています
def action(conn, _) do
apply(__MODULE__, action_name(conn),
[conn, conn.params, conn.assigns.current_user])
end
を持っています。
すべてが正常に動作している、私はCURRENT_USERのために私は私のコントローラ上でそれをすべてを繰り返す必要はありませんでしたようなDRY解決策があるかどうかを確認したかったです。
おかげ
'apply'を呼び出すときに' conn.assigns.current_company'をそのリストに追加するだけですか? – Dogbert
あなたはこのように意味するか?: 'はい__ MODULE__、ACTION_NAME(CONN)、 [CONN、conn.params、conn.assigns.current_user、conn.assigns.current_company]' –
(適用それはあなたのために動作しません – Dogbert