如何使用submit()函数来处理表单提交
编辑本页警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 3.4,现已不再维护。
读本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。
如何使用submit()函数来处理表单提交
方法处理表单提交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”方法一样,验证将只应用于提交的字段。如果你需要验证所有的底层数据,手动添加必要的字段,这样它们就被验证了:
1 2
// 'email'和'username'被手动添加以强制验证$形式->提交(array_merge ([“电子邮件”= >零,“用户名”= >零],$请求->请求->所有()),假);
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。