0
我有一個鳳凰的動作,看起來像:保存路線上的錯誤在鳳凰城創建操作
def create(conn, %{"user" => user_params}) do
changeset = User.changeset(%User{}, user_params)
case Repo.insert(changeset) do
{:ok, user} ->
conn
|> put_flash(:info, "#{user.name} created!")
|> redirect(to: user_path(conn, :index))
{:error, changeset} ->
render(conn, "new.html", changeset: changeset)
end
end
驗證錯誤,它呈現驗證錯誤適當的形式,但它不保留適當的路徑,例如而不是/users/new
它顯示/users
,因爲它正在嘗試POST
到資源。這似乎是因爲它應該保留新的路線,但我知道我們現在處於create
行動。有沒有辦法「重定向」並仍然保留變更集?我希望我可能需要更改new
操作簽名中的變更集,以將狀態傳遞給該操作,但不確定這會帶來其他後果,我可能會後悔。我的新動作:
def new(conn, _params) do
changeset = User.changeset(%User{})
render conn, "new.html", changeset: changeset
end
您可以使用'ajax'來提交表單。 – JustMichael