首页 文章

如何在FOSJSRoutingBundle上生成没有问号的路线

提问于
浏览
0

我很困惑,这是文档

https://github.com/FriendsOfSymfony/FOSJsRoutingBundle/blob/master/Resources/doc/index.md

documentation - > Routing.generate('my_route_to_expose',{id:10}); //将导致/ foo / 10 / bar

这是控制器上的路由(前缀为“超级用户”)

/**
 * @Route("/deleteuser/{userid}",name="suDeleteUserRoute",options={"expose"=true})
 * @Template()
 */
public function deleteUserAction($userid)
{

所以我显然想要生成一个看起来像这样的路线

server.com/superuser/deleteuser/76

但它会生成带问号的路线

server.com/superuser/deleteuser?id=76

这是我在Javascript上生成路线的方式

Routing.generate('suDeleteUserRoute', { id: 76 });

2 回答

  • 0

    您的路由使用 userid 参数,但您给它 id 参数 .

    请尝试使用 Routing.generate('suDeleteUserRoute', { userid: 76 }); .

  • 1

    你可以在 routing.yml 中创建这样的路线:

    super_user:
        path:      /superuser/deleteuser/{userid}
        defaults:  { _controller: BundleName:ControllerName:FunctionName }
        requirements:
          userid:     \d+
    
    • 控制器名称应该没有后缀 Controller

    • 函数名称应该没有后缀 Action

相关问题