Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security Symfony标记化URL不工作_Security_Url_Symfony1_Routing_Token - Fatal编程技术网

Security Symfony标记化URL不工作

Security Symfony标记化URL不工作,security,url,symfony1,routing,token,Security,Url,Symfony1,Routing,Token,通过查看Symfony文档,我找到了一种使用“token”字段保护表单的方法。我正在尝试实现它,表单生成了一个令牌,但它没有将它传递到“showsucture.php”页面的URL中,因此它现在显示我的_admin.php部分 我认为这与路由有关,但我的路由和他们的一样,仍然不起作用 car: class: sfDoctrineRouteCollection options: { model: car, column: token } requirements: { token: \

通过查看Symfony文档,我找到了一种使用“token”字段保护表单的方法。我正在尝试实现它,表单生成了一个令牌,但它没有将它传递到“showsucture.php”页面的URL中,因此它现在显示我的_admin.php部分

我认为这与路由有关,但我的路由和他们的一样,仍然不起作用

car:
  class: sfDoctrineRouteCollection
  options: { model: car, column: token }
  requirements: { token: \w+ }

car_show:
  url: /car/:iditem.:sf_format
  class: sfDoctrineRoute
  options: { model: car, type: object }
  param: { module: car, action: show, sf_format: html }
  requirements: { iditem: \d+, sf_method: get }
现在表单本身需要URL中的token字段,但是当我提交表单时,它应该将“tokenized URL”传递到成功页面,以便可以显示部分,但是URL默认为“iditem”字段而不是“token”字段,因此我的部分不会呈现

我发现,如果我将第二条路由的名称更改为其他名称(或将其删除),那么标记化的URL就可以工作。但是普通的URL就没有了

这是我需要在类文件中更改的内容吗


这是我的参考资料

我真的弄明白了。第一组路线的“sfDoctrineCollection”创建了一个“car\u show”路线,所以我放在那里的路线覆盖了它。我所做的只是把第二条路线的名字改成了不同的名字,它成功了

car:
  class: sfDoctrineRouteCollection
  options: { model: car, column: token }
  requirements: { token: \w+ }

car_show_id:
  url: /car/:iditem.:sf_format
  class: sfDoctrineRoute
  options: { model: car, type: object }
  param: { module: car, action: show, sf_format: html }
  requirements: { iditem: \d+, sf_method: get }
我只需要更新所有链接中对旧路线的所有引用