控制器中的Symfony2路由

时间:2012-10-23 11:07:27

标签: url variables symfony routing

我有一个简单的问题。有没有办法在cotroler中使用路由来获取这样的链接:

some-text-link-282237

值282237。

到目前为止,我通过以下方式传递整个网址:

@Route("/route/{id}", name="my_route")

然后preg匹配它,但也许有一个更清洁的方式。该值始终位于字符串的末尾,由last( - )

分隔

感谢您提供任何帮助,并对语言错误表示抱歉

2 个答案:

答案 0 :(得分:2)

/**
 * @Route("/route/{slug}-{id}",
 *        name="route_name",
 *        requirements={"slug":"[a-zA-Z0-9\-]+","id":"\d+"})
 */

答案 1 :(得分:0)

您可以尝试这样的路线:@Route("/route/{some}/{text}/{link}/{id}并直接将您的ID作为参数或更改分隔符路由:http://symfony.com/doc/2.0/cookbook/routing/slash_in_parameter.html直接使用“ - ”作为路由分隔符