0
我有這樣的路線:Elixir生成一個帶「?」的網址而不是 「/」
resources "/my_items", ItemController, only: [:index, :show]
get "/pages/:page_number", ItemController, :page, param: "page_number"
我在ItemController
爲pages
行動,這是一個簡化版本:
def index(conn, p) do
# .....
def page(conn, %{"page_number" => page_num) when is_nil(page_num) do
index(conn, %{"page_number" => 1})
end
def page(conn, %{"page_number" => page_num) do
index(conn, %{"page_number" => page_num})
end
當我去 「/頁/ 123」,它工作正常。然而,這樣的:
items_path(conn, :page, page_number: 456)
拋出異常:
protocol Phoenix.Param not implemented for [page_number: 456]