从分配中删除条目

时间:2017-02-19 10:11:32

标签: elixir phoenix-framework

我在:current_user中设置了密钥Plug.Conn.assigns,如下所示:

conn |> assign(:current_user, user)

如何删除此条目?

2 个答案:

答案 0 :(得分:2)

最简单的方法:

Map.drop(conn.assigns, [:current_user])

请注意,Map.drop需要删除第二个参数list

要将其应用于conn,请使用:

conn = update_in(conn.assigns, &Map.drop(&1, [:current_user]))

答案 1 :(得分:0)

要删除conn.assigns中的一个(下一个示例是等效的):

conn = Map.put(conn, :assigns, Map.delete(conn.assigns, :current_user))
conn = %{conn | assigns: Map.delete(conn.assigns, :current_user)}
conn = update_in(conn.assigns, &(Map.delete(&1, :current_user)))