我正在进行symfony2项目,当打开索引页面时,我收到了如下路由错误:
在GmjobExaminationBundle:front:list.html.twig的第25行呈现模板期间引发异常(路由"gmjob_examination_front_view"的"参数"id必须匹配"[^/]"(给定"4719")。
这是我的列表。html。wig第25行:
<a href="{{ path(view.mainRouteName, view.mainRouteParams) }}"><h2>{{ view.title }}</h2></a>
这是路线注释:
* @Route("/detail-concours/{id}/{slug}", requirements = {"id" = "[^/]"})
这里有两种考试类实体的方法:
public function getMainRouteName()
{
return 'gmjob_examination_front_view';
}
public function getMainRouteParams()
{
return array(
'id' => $this->id,
'slug' => $this->slug
);
}
我感谢你的帮助。谢谢你。
您已经将id参数的要求设置为[^/]
,这本质上意味着:id必须匹配除/
之外的任何单个字符。
你的意思可能是,正如@Cherry所说的[^/]+
。如果是这样,您可以一起删除requirements
部分,因为这正是Symfony Router中的默认参数regex。
所以只要做到:
* @Route("/detail-concours/{id}/{slug}")
提示:如果你的id
总是一个整数,你可能想让它:
* @Route("/detail-concours/{id}/{slug}", requirements = {"id" = "'d+"})