Ant*_*bit 3 routing yaml http-method symfony
我想在routing.yml中为同一路由声明两个方法GET和POST.
根据文档,可以使用这样的注释:
/**
* @Route("/edit/{id}")
* @Method({"GET", "POST"})
*/
Run Code Online (Sandbox Code Playgroud)
但是如何YAML?我尝试了不同的东西:
contact_envoi:
pattern: /contact-envoi
defaults: { _controller: AcmeDemoBundle:Default:contactEnvoi }
requirements:
sf_method: ['get','post']
Run Code Online (Sandbox Code Playgroud)
和
...
requirements:
_method: { 'GET', 'POST' }
Run Code Online (Sandbox Code Playgroud)
但它仍然无效...请帮助,我在文档中没有发现任何相关信息.
感谢Touki的评论,它的确有效!
我不得不宣布在两个单独的股两次相同的URL和每个都有自己的方法中说明这里的Symfony的2.1和这里的Symfony的2.2.
contact:
path: /contact
defaults: { _controller: AcmeDemoBundle:Main:contact }
methods: [GET]
contact_process:
path: /contact
defaults: { _controller: AcmeDemoBundle:Main:contactProcess }
methods: [POST]
Run Code Online (Sandbox Code Playgroud)
小智 5
您可以使用GET和POST方法获得相同的路由.
contact:
path: /contact
defaults: { _controller: AcmeDemoBundle:Main:contact }
methods: ['GET','POST']
Run Code Online (Sandbox Code Playgroud)
然后在控制器中管理使用的方法.
public function contactAction(Request $request)
{
if ('POST' === $request->getMethod()) {
..
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7486 次 |
| 最近记录: |