长话短说,我有一个表格,我希望id字段是强制性的,也是一个数字。根据symfony2书,这应该通过以下路由轻松实现:
acme_demo_users_save:
pattern: /userSave
defaults: { _controller: AcmeDemoBundle:User:save, _format: ~ }
requirements:
_method: POST
id: \d+
确实检查了方法要求,因为如果我尝试执行get,则会抛出错误。但是,不执行任何类型的参数验证。我可以提交带有或没有id的表格。
我错过了什么吗?参数是否仅针对GET进行验证?
答案 0 :(得分:5)
此路由不知道如何获取ID参数。编辑其模式如下:
acme_demo_users_save:
pattern: /userSave/{id}
...
所以网址看起来像http://mysite.com/userSave/12(12是id)
如果您需要通过邮寄请求提交ID,只需在表单中添加验证约束,并在路径中省略ID验证