Phoenix(Elixir)中通配符路径的路径助手

时间:2018-11-21 15:37:08

标签: elixir phoenix-framework

我想为通配符路由使用路径助手,其定义如下:

get("/thing/*sub_path", ThingController, :index)

确实有一个路径助手,但是它确实不是我所需要的:

iex(3)> MyAppWeb.Router.Helpers.thing_path(MyAppWeb.Endpoint, :index, sub_path: "test/thing")
"/thing?sub_path=test%2Fthing"

我需要的是,

"/thing/test/thing"

关于如何实现这一目标的任何线索吗?

1 个答案:

答案 0 :(得分:1)

尝试一下:

get("/thing/*sub_path", ThingController, :index)

这:

MyAppWeb.Router.Helpers.thing_path(MyAppWeb.Endpoint, :index, ["test", "thing"])

示例:https://gist.github.com/tapajos/b48e0d1b8ef6654ad70a220c8dc1a97c