我已经定义了路线:
@Route("/photo/edit/{id}", name="gallery_photo_edit", requirements={"id" = "\d+"})
由于我必须发出Ajax请求,我需要生成它并放入JS代码。 例如
var $PhotoEditActionUrl = "{{ path("gallery_photo_edit", {id: ":id:"}) }}";
正如您所看到的,我想分配一个字符串占位符的ID,因为我不知道照片用户的ID将被编辑。显而易见的问题是Route要求不允许这样做。是否可以在不删除需求的情况下四处走动作为额外的安全措施?
谢谢,
答案 0 :(得分:2)
如果你需要使用JS生成一个路由,一个existant bundle很有用,并且托管在github上:
安装后,您可以通过以下方式在JS中调用它:
Routing.generate('my_route_to_expose', { id: 10, foo: "bar" });
// will result in /foo/10/bar?foo=bar
摘自此文档:https://github.com/FriendsOfSymfony/FOSJsRoutingBundle/blob/master/Resources/doc/index.md