1

如果有一些这样的控制器

def index(%{assigns: %{current_user: %User{} = current_user}}} = conn, params) do
    ## User exists
end

def index(conn, params) do
    ## No user exists
end

如果我运行这个测试,我希望它调用第一个 #index 操作,但它调用第二个操作,没有用户,并且由 conn 分配%{current_user: nil}

test "GET /posts", %{conn: conn} do
    user = insert(:user)
    conn = assign(conn, :current_user, user)
    get(conn, post_path(conn, :index))
end

为什么没有正确分配 current_user?为什么会消失?

4

1 回答 1

-1

我不确定,但试试这个

def index (conn,params)
 current_user = conn.assigns.current_user
## User exists
end

尝试这个

于 2018-05-09T17:25:47.103 回答