thisismyroute:
path: thisroute/to/{id}
defaults: { _controller: MyBundle:Default:createRoutePage }
requirements:
page: \d+
/**
* Template Select
* @Route("/to/{id}",name="thisismyroute", requirements={"id": "\d+"})
* @Method({"POST"})
*/
public function createRoutePage($id){
/* code here */
}
当我访问www.mysite.com/app_dev.php/thisroute/to/asdfasdf时,由于要求设置为整数,因此可以访问它。
在我的routing_dev.yml中,我有一行
_main: resource:routing.yml
答案 0 :(得分:0)
对于注释设置,它应该是:
/**
* Template Select
* @Route("/to/{id}", name="thisismyroute", requirements={"id"="\d+"})
* @Method({"POST"})
*/
public function createRoutePage($id)
{
/* code here */
}
<强>更新强>
对于yml配置,请尝试
thisismyroute:
path: thisroute/to/{id}
defaults: { _controller: MyBundle:Default:createRoutePage }
requirements:
id: \d+
答案 1 :(得分:0)
通常在控制器中使用@Route注释时,可以更轻松地配置routing.yml,以便一劳永逸地导入在Controller目录中注释的所有路由,如下所示:
# import routes from a controller directory
route_group_name:
resource: "@YourBundle/Controller"
type: annotation
那就是它。这样您就不需要在routing.yml中指定每个路由。
然后您只能在控制器中使用注释:
/**
*
* @Route("/to/{id}", name="thisismyroute", requirements={"id"="\d+"})
* @Method({"POST"})
*/
public function myRouteAction($id)
{
/* code here */
}
PS:它也是Symfony推荐的最佳做法,可以使用注释来声明路线。