如何使用submit()函数来处理表单提交
编辑本页警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 2.8,现已不再维护。
读本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。
如何使用submit()函数来处理表单提交
2.3
的handleRequest ()方法是在Symfony 2.3中引入的。ob娱乐下载
与handleRequest ()
方法,它很容易处理表单提交:
12 3 4 5 6 7 8 9 10 11 12 13 14 16 17 18 19 20 21
使用ob娱乐下载\组件\HttpFoundation\请求;/ /……公共函数newAction(请求$请求){$形式=$这->createFormBuilder ()/ /……->getForm ();$形式->handleRequest ($请求);如果($形式->isSubmitted () & &$形式->isValid ()) {//执行一些动作…返回$这->redirectToRoute (“task_success”);}返回$这->呈现(“违约/ new.html.twig”,数组(“形式”= >$形式->createView ()));}
提示
要了解关于此方法的更多信息,请阅读形式.
调用表单::submit()手动
在某些情况下,您希望更好地控制何时提交表单以及将哪些数据传递给表单。而不是使用handleRequest ()方法,将提交的数据直接传递给提交():
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
使用ob娱乐下载\组件\HttpFoundation\请求;/ /……公共函数newAction(请求$请求){$形式=$这->createFormBuilder ()/ /……->getForm ();如果($请求->isMethod (“职位”)) {$形式->提交($请求->请求->get ($形式->getName ()));如果($形式->isSubmitted () & &$形式->isValid ()) {//执行一些动作…返回$这->redirectToRoute (“task_success”);}}返回$这->呈现(“违约/ new.html.twig”,数组(“形式”= >$形式->createView ()));}
提示
当通过“PATCH”请求提交表单时,您可能只想更新几个已提交的字段。要实现这一点,可以将可选的第二个布尔参数传递给提交()
.通过假
将删除表单对象中任何缺失的字段。否则,缺失的字段将被设置为零
.
谨慎
当第二个参数clearMissing美元
是假
,像“PATCH”方法一样,验证扩展只处理提交的字段。如果需要验证底层数据,则应该手动完成,即使用验证器。
向表单传递请求::submit()(已弃用)
2.3
在Symfonob娱乐下载y 2.3之前,提交()
方法被称为bind ()
.
在Symfonob娱乐下载y 2.3之前,提交()方法接受请求对象作为前面示例的方便快捷方式:
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
使用ob娱乐下载\组件\HttpFoundation\请求;/ /……公共函数newAction(请求$请求){$形式=$这->createFormBuilder ()/ /……->getForm ();如果($请求->isMethod (“职位”)) {$形式->提交($请求);如果($形式->isSubmitted () & &$形式->isValid ()) {//执行一些动作…返回$这->redirectToRoute (“task_success”);}}返回$这->呈现(“违约/ new.html.twig”,数组(“形式”= >$形式->createView ()));}
通过请求直接向提交()仍然可以工作,但已弃用,并已在Symfony 3.0中删除。ob娱乐下载你应该使用这个方法handleRequest ()代替。
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。