我更改了控制器的名称以及控制器中的路由以及与其对应的模板。我什至执行了bin / console debug:route检查路由terminal 但是,当我输入http:/ localhost:8000 / admin / programming / circuit时,出现错误:未找到“ GET / admin / programming / circuit”的路由。 error
备注:在更改控制器名称和路由之前,一切工作正常。 enter image description here
答案 0 :(得分:1)
您的路线不正确。为您尝试拨打路线
/admin/programation/circuit
但是您的路线是
/admin/programation/circuit/
所以我认为这是您所遇到的问题。因此,您必须添加/
或将其从操作中删除。
答案 1 :(得分:1)
诀窍是,在symfony路由系统中,只有当旋转路径完全是'/'时,我们才能声明路径以'/'结尾的路由(没有固定任何东西)。
在我们的例子中, index()函数指向以'/ admin / programming / circuit'为前缀并以'/'结尾的路由,否则以下路由将变为'/ admin / programming / circuit /',如您所见,它不遵守惯例。
我告诉您的是,以这种方式重新定义配置,以使index()
函数的路径变为空。
要以正确的方式定义路由,甚至可以在路由(from version 3.4)
/**
* @Route("/admin/programation/circuit", name="admin_programtion_circuit_")
*/
class BackofficeProgramationController {
/**
* @Route("", name="index")
*/
public function index() {...}
}