如何使用Phoenix framework Router中的资源更改参数名称

时间:2015-08-18 05:35:38

标签: elixir phoenix-framework

是否有选项可以做到这一点 - >

resources "users", MyApp.UserController

生成参数名称不是:id的路径?

1 个答案:

答案 0 :(得分:17)

使用resources/4 macro中的param参数:

resources "users", MyApp.UserController, param: "name"

这将生成以下路线:

  • GET / users => :索引
  • GET / users / new =>新的
  • POST / users => :创建
  • GET / users /:name => :show
  • GET / users /:name / edit => :编辑
  • PATCH / users /:name => :更新
  • PUT / users /:name => :更新
  • DELETE / users /:name => :删除

以下是资源的其他选项:

  

此宏接受一组选项:

     

:only - 生成路线的操作列表,例如:[:show,:edit]

     

:except - 要排除生成的路由的操作列表,例如:[:delete]

     

:param - 此资源的参数名称,默认为“id”

     

:name - 此资源的前缀。这用于指定的帮助程序,以及嵌套资源中参数的前缀。默认值自动从控制器名称派生,即UserController将具有名称“user”

     

:as - 独家配置命名助手

     

:singleton - 定义客户端查找的单例资源的路由,而不引用ID。请阅读以下内容以获取更多信息