---恢复内容开始---

构成表单的几个元素

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-表单学习的更多相关文章

  1. HTML表单学习

    HTML表单学习 前言 HTML基础学习会由HTML基础标签学习.HTML表单学习和一张思维导图总结HTML基础三篇文章构成,文章中博主会提取出重点常用的知识和经常出现的bug,提高学习的效率,后续会 ...

  2. HTML5表单学习笔记

    表单在网页设计中的作用非常重要,HTML5又增加了表单方面的诸多功能,包括增加input输入类型,input属性,form元素,form属性等,解决了我们以前比较头疼或者繁琐的功能. 新增的输入类型 ...

  3. Form表单学习网站

    HTML表单 -- form标签 -- 与浏览者交互:http://www.dreamdu.com/xhtml/tag_form/

  4. html表单---学习笔记03

    第8章 表单 8.1 表单标记<form> <form name="表单名称" method="提交方法" action="处理程序 ...

  5. Django Form表单学习总结

    Form中添加自定义的验证:    1.对特定字段属性的验证;    2.包含多字段的验证. 先创建一个简单的Form: from django import forms class ContactF ...

  6. Html学习之十八(表格与表单学习--统计表制作)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  7. Html学习之十七(表格与表单学习--排行版制作)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. HTML5 表单学习

    创建表单的方法: 用form标签 form标签常用元素:input:单行表单.select:下拉式表单.textarea:多行文本域 input元素的type属性:text:文本属性.checkbox ...

  9. 18 12 24 html 表单学习

    html表单 表单用于搜集不同类型的用户输入,表单由不同类型的标签组成,相关标签及属性用法如下: 1.<form>标签 定义整体的表单区域 action属性 定义表单数据提交地址 meth ...

  10. JS表单学习笔记(思维导图)

    导图

随机推荐

  1. golang 代码笔记

    锁 互斥锁,g0获取锁,到释放锁之间,g1去获取锁失败,阻塞,g0释放锁之后g1获取锁成功,gn阻塞. package main import ( "fmt" "sync ...

  2. maven wrapper使用本地maven

    修改maven-wrapper.properties内容如下: #distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apa ...

  3. HDU 1049(蠕虫爬井 **)

    题意是一只虫子在深度为 n 的井中,每分钟向上爬 u 单位,下一分钟会下滑 d 单位,问几分钟能爬出井. 本人是直接模拟的,这篇博客的分析比较好一些,应当学习这种分析问题的思路:http://www. ...

  4. SpringBoot系列: Spring支持的异常处理方式

    ===================================视图函数返回 status code 的方式===================================Spring 有 ...

  5. 二维、三维 Laplace 算子的极坐标表示

    (1) 设 $(r,\theta)$ 是 $\bbR^2$ 的极坐标, 即 $$\bex x=r\cos\theta,\quad y=r\sin \theta. \eex$$ 证明 Laplace 算 ...

  6. Nginx模块

    模块概述 https://kb.cnblogs.com/page/98352/ Nginx模块工作原理概述 (Nginx本身支持多种模块,如HTTP模块.EVENT模块和MAIL模块,本文只讨论HTT ...

  7. MySQL的一些基本命令笔记(4)

    delete 语句嵌套子查询: delete from 表名1 where 列名 操作符 (select 列名 from 表名2 where 条件); 示例: delete from customer ...

  8. Linux中执行C++程序

    参考:https://blog.csdn.net/qq_31125955/article/details/79343498 https://blog.csdn.net/weixin_35477207/ ...

  9. sql where,group by ,having,order by用法和区别

    select 子句 指定列 可放置分组函数 where子句:限制行 group by 子句:对数据进行分组 和 having子句:限定组.和group by 一起使用 (对分组时候进行筛选)可放置分组 ...

  10. Silverlight Visifire控件应用去除图标的水印

    首先,新建一个类,继承自Chart,重写LoadWatermark方法. 再创建图表实例的时候就不能new Chart实例了,直接使用MyCharts. 使用去除水印之前的图片: 使用去除水印之后的图 ...