Symfony2可选路线
正如Symfony Book()所建议的那样,为了创建用于路线的optionar占位符,您只需执行以下操作:Symfony2可选路线,symfony,routing,Symfony,Routing,正如Symfony Book()所建议的那样,为了创建用于路线的optionar占位符,您只需执行以下操作: participant_list: pattern: /list/{filter}/ defaults: { _controller: ParticipantBundle:Default:list, filter: 1} 并在控制器中定义该变量: public function listAction($filter) { … } public funct
participant_list:
pattern: /list/{filter}/
defaults: { _controller: ParticipantBundle:Default:list, filter: 1}
并在控制器中定义该变量:
public function listAction($filter) {
…
}
public function listAction($filter = 1) {
…
}
但是,当我访问mypage.dev/list/时,如果没有参数,它会显示“找不到GET/list/的路由”
你知道怎么做吗?我不确定,但url必须是mypage.dev/list,末尾没有斜杠,路由应该是
participant_list:
pattern: /list/{filter}
defaults: { _controller: ParticipantBundle:Default:list, filter: 1}
我不确定,但url必须是mypage.dev/list,末尾没有斜杠,路由应该是
participant_list:
pattern: /list/{filter}
defaults: { _controller: ParticipantBundle:Default:list, filter: 1}
尝试在控制器中定义变量的默认值:
public function listAction($filter) {
…
}
public function listAction($filter = 1) {
…
}
尝试在控制器中定义变量的默认值:
public function listAction($filter) {
…
}
public function listAction($filter = 1) {
…
}
这很奇怪,因为我做了一些测试,它是有效的。但我不太了解symfony,很抱歉,事实上,你在某些方面是对的。但是,如果我没有把斜杠放在末尾,(在路由中),当我访问/list/(用斜杠)时,它会抛出404,我真的建议你删除结尾的斜杠。如果你用路由器生成你的URL(如文档所示),你不会得到404错误,因为默认生成的URL是/list和call listAction(1)…这很奇怪,因为我做了一些测试,它正在工作。但我不太了解symfony,很抱歉,事实上,你在某些方面是对的。但是,如果我没有把斜杠放在末尾,(在路由中),当我访问/list/(用斜杠)时,它会抛出404,我真的建议你删除结尾的斜杠。如果您使用路由器生成URL(如文档所示),您不会得到404错误,因为默认生成的URL将是/list并调用listAction(1)。。。