elixir - 匹配 router.ex 中参数的 URL 的其余部分

标签 elixir phoenix-framework

如何匹配 router.ex 中路径的末尾,如下所示。路径的结构不固定,可以有一层/两层/三层或更多层

www.example.com/first/second/third 

www.example.com/first/second

通常您可以执行 get "/:first" 但它只会将第一个捕获为 params["first"]

最佳答案

基于https://github.com/phoenixframework/phoenix/blob/master/lib/phoenix/router.ex

你可以做

get "/first/*anything"

您可以在 Controller 中调用 params["anything"] 来获取路径的其余部分。

编辑:如果您的路径是 /first/second/thirdparams["anything"] 将返回 ["second","列表第三”]

关于elixir - 匹配 router.ex 中参数的 URL 的其余部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34411289/

相关文章:

postgresql - 只为用户身份验证使用不同的数据库是否可以?

html - 没有 Ecto 的 EEX 模板中的寻呼机 - Elixir 和 Phoenix

erlang - Elixir - 使用它代替普通的 erlang 是否会造成性能损失?

elixir - 不能在匹配子句之外使用 ^xxx

elixir - Phoenix Presence 通过交替元数据跨多个 channel 跟踪用户

elixir - 直接从 Phoenix 路由器重定向

datetime - 使用 Elixir DateTime 将日期格式化为 RFC2616 格式

json - 使用 Phoenix 将解码后的 JSON 传递到 View

erlang - 如何使用 hackney 在 elixir 中发送 body 参数

html - <script> 标记中未定义函数 static_path/2