symfony-表单学习
---恢复内容开始---
构成表单的几个元素
1.数据模型 M
一种比较抽象的概念,按我的理解来说,本质上就是数据的一种存在形式,可以看做一个类,一般对这些模型进行crud操作。一种是真实存在的数据模型,最终要存储到数据库当中的数据,另一种
是虚拟的数据模型,构建出来是为了进行临时处理,比如网页搜索框输入的内容,最终并不会存储到数据库当中,是为了进行页面的临时处理而进行的, 或者是为了构建数据而设计的
模型,程序和程序之间的枢纽。并且数据模型有自身的属性和限制条件,比如搜索操作或者用户注册操作是有一定限制的,不能输入不合理的数据,example,手机号码为11位
2.V 表单的hrml,js,css等
用于设置表单的格式,让表单更为美观,可以使用一些现有的html框架,比如网页上的搜索框,一些框架就可以设置候选项等,
3.C 负责处理业务逻辑的代码,通过表单提交数据之后,进行的增删改查等操作,注意这里逻辑分为自身的业务逻辑或者数据模型当中的业务逻辑
...之前好像没有在twig里面配置html代码,所以程序无法正常运行,等之后再说吧,
早上写了忘记保存,后面写的没有了,有点粗心,,,,先放一些代码供自己以后参考吧
public function indexFunction(){
$user = new User();
$form = $this->createFormBuilder($user) //创建关于user的表单, 并设置要添加的属性,
->setAction($this->generateUrl('abc')) //像abc路由对应的方法提交表单方法为get
->setMethod('GET')
->add('email')
->add('password','password')
->add('submit','submit',array('attr'=>array('formnovalidate'=>'formnovalidate')))
->add('file','file') //上传文件
->getForm(); //获取表单,并在关闭html5的表单验证 $form->handleRequest($this->getRequest()); //让symfony对表单的请求进行验证操作 if($form->isValid()){ //如果验证合法的话,就更新入数据库当中 $em = $this->getDoctrine()->getManager();
$em->persist($user);
$em->flush();
} return array('form'=>$form->createView()); //显示表单
}
/**
* @ORM\Column(type="integer",nullable=true)
* @Assert\Length(min=1,max=5)
* 在entities里面设置验证规则
*/
protected $age; //添加一个字段测试
symfony-表单学习的更多相关文章
- HTML表单学习
HTML表单学习 前言 HTML基础学习会由HTML基础标签学习.HTML表单学习和一张思维导图总结HTML基础三篇文章构成,文章中博主会提取出重点常用的知识和经常出现的bug,提高学习的效率,后续会 ...
- HTML5表单学习笔记
表单在网页设计中的作用非常重要,HTML5又增加了表单方面的诸多功能,包括增加input输入类型,input属性,form元素,form属性等,解决了我们以前比较头疼或者繁琐的功能. 新增的输入类型 ...
- Form表单学习网站
HTML表单 -- form标签 -- 与浏览者交互:http://www.dreamdu.com/xhtml/tag_form/
- html表单---学习笔记03
第8章 表单 8.1 表单标记<form> <form name="表单名称" method="提交方法" action="处理程序 ...
- Django Form表单学习总结
Form中添加自定义的验证: 1.对特定字段属性的验证; 2.包含多字段的验证. 先创建一个简单的Form: from django import forms class ContactF ...
- Html学习之十八(表格与表单学习--统计表制作)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Html学习之十七(表格与表单学习--排行版制作)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- HTML5 表单学习
创建表单的方法: 用form标签 form标签常用元素:input:单行表单.select:下拉式表单.textarea:多行文本域 input元素的type属性:text:文本属性.checkbox ...
- 18 12 24 html 表单学习
html表单 表单用于搜集不同类型的用户输入,表单由不同类型的标签组成,相关标签及属性用法如下: 1.<form>标签 定义整体的表单区域 action属性 定义表单数据提交地址 meth ...
- JS表单学习笔记(思维导图)
导图
随机推荐
- shell实战之日志脱敏-2.0
cfg # This is generated to be a configuration file. # kay # // # This is a parameter for crontab and ...
- 2018 ACM 国际大学生程序设计竞赛上海大都会赛重现赛 J Beautiful Numbers (数位dp)
题目链接:https://ac.nowcoder.com/acm/contest/163/J 题目大意:给定一个数N,求区间[1,N]中满足可以整除它各个数位之和的数的个数.(1 ≤ N ≤ 1012 ...
- Mybatis的应用2 使用mybits+SpringBoot完成第一个查询的demo(随后加增加,更新,删除)
首先在mapper下面新建一个mysql.xml mysql.xml <?xml version="1.0" encoding="UTF-8" ?> ...
- codeforces-1140 (div2)
A.维护一个前缀最大值,不断跳即可 #include <map> #include <set> #include <ctime> #include <cmat ...
- busybox(二)编译
title: busybox(二)编译 tag: arm date: 2018-11-13 23:14:58 --- busybox(二)编译 解压,源码包在busybox-1.7.0.tar.bz2 ...
- VUE-开发工具VSCode
VUE-开发工具之VSCode VSCode是微软出的一款轻量级代码编辑器,免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全.Emme ...
- IDEA破解
1. 官网下载 idea激活 进入 C:\Windows\System32\drivers\etc 编辑host文件 加入0.0.0.0 account.jetbrains.com 2.打开ID ...
- [物理学与PDEs]第5章习题3 第二 Piola 应力张量的对称性
试证明: 在物质描述下, 动量矩守恒定律等价于第二 Piola 应力张量的对称性. 证明: 由 $$\beex \bea \int_{G_t}\rho\sex{{\bf y}\times\cfrac{ ...
- /etc/profile文件被改坏导致命令不可用
这几天在装一个软件,设置环境变量的时候,不小心把/etc/profile文件改坏了(就是没配置对),在source /etc/profile后导致所有命令都不可用了.出现如下报错: -bash: xx ...
- 使用SIGALARM为recvfrom设置超时
static void sig_alrm(int); void dg_cli(FILE *fp, int sockfd, const SA *pservaddr, socklen_t servlen) ...