创建数据对象

创建数据对象

1、为什么要创建数据对象

在实际项目开发中,经常要接收表单数据,如果表单数据过多,我们在接收过程中就需要通过$_POST进行多次接收,为了简化以上操作,我们就可以使用数据对象来解决这个问题。

?

ThinkPHP可以帮助你快速地创建数据对象,最典型的应用就是自动根据表单数据创建数据对象,这个优势在一个数据表的字段非常之多的情况下尤其明显。

2、模拟创建数据对象

① 更改add.html模板页面中的表单数据

② 设置下拉选框

在控制器的add方法中定义如下:

在模板中通过volist进行遍历操作:

③ 定义一个form表单,包裹所有表单元素,如下:

④ 使用Ajax提交表单数据

⑤ 在服务器对表单数据进行接收

⑥ 在客户端判断是否添加成功

问题:为什么我们没有接收任何数据,只是使用create方法和add方法就可以完成表单的接收以及数据的添加操作呢?

3、create方法详解

要使用到的知识点:I方法

主要功能:用于接收表单数据,相当于$_GET与$_POST

为什么要使用I方法代替$_GET与$_POST?答:因为I方法更加安全。

create方法详解:

如果create方法中没有任何参数,系统默认接收$_POST数组中的所有数据,然后经历一系列操作后,把返回结果赋值给当前对象的data属性。

问题:为什么add方法中没有任何参数也可以正常添加呢?

答:主要是因为add方法也会自动判断参数,如下图所示:

案例:显示部门列表

① 在Dept控制器中定义index方法,用于显示部门列表

② 复制index.html模板文件到./Application/Admin/View/Dept文件夹下并更改资源路径

③ 在模板文件中通过volist方法遍历信息列表

时间: 2024-10-11 17:00:56

创建数据对象的相关文章

thinkphp自动创建数据对象解析

thinkphp有一个自动创建数据对象的create方法,核心代码如下 public function create($data='',$type='') { // 如果没有传值默认取POST数据 if(empty($data)) { $data = I('post.'); }elseif(is_object($data)){ $data = get_object_vars($data); } // 判断是否有主键,有代表修改,没有代表插入 $type = $type?:(!empty($dat

TP3.2关于创建数据create

create三种创建数据机制:1.直接是数组创建数据    $data['name'] = 'ThinkPHP';    $data['email'] = '[email protected]';    $User->create($data); 2.从对象创建数据    $User = stdClass();    $User->name = 'ThinkPHP';    $User->email = '[email protected]';    $Member = M("

javascript学习-创建json对象数据,遍历

之前我已经有讲过后台返回json数据到前台,并在前台遍历json数据. 这里讲下直接在JS里创建JSON数据,然后遍历使用~ 创建代码例如以下:(创建的是JSON对象) var YearSelect = {}; var Year = 2014; var DateOption; for (var i = Year; i < Year + 12; i++) { DateOption = {'Year':i, 'Month':i-Year+1}; // alert(DateOption.Year) Y

PHP面向对象之php数据对象(PDO)——图书查看管理

首先创建相关的有关的数据库:数据库的名字我用的是books表名用的是book(下面是完整的数据库,里面的img/img01.jpg是显示的图片的路径) CREATE DATABASE books DEFAULT CHARSET=utf8;USE books; CREATE TABLE book( b_id INT PRIMARY KEY AUTO_INCREMENT, b_name VARCHAR(100) NOT NULL UNIQUE, b_img VARCHAR(50) NOT NULL,

HTML5 Canvas ( 创建图形对象 ) createImageData

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>canvas</title> <script type="text/javascript" src="../js/jQuery.js"></script> <style type="text/css">

微软-创建数据访问层

简介 https://msdn.microsoft.com/zh-cn/cc964016 作为web 开发人员,我们的工作总是在和数据打交道.我们创建数据库来存储数据,编写代码来检索并修改数据,并创建Web 页面来收集和汇总数据.这是探讨在ASP.NET 2.0 中实现这些常用类型的技巧的系列教程中的首篇教程.我们从创建一个 软件架构 开始,包括使用Typed DataSet 的数据访问层(DAL) .实现自定义业务规则的业务逻辑层(BLL) 和共享同一页面布局的ASP.NET 页面组成的表示层

Oracle---常用SQL语法和数据对象

1.INSERT  (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSERT INTO 表名(字段名1, 字段名2, ……)  SELECT 字段名1, 字段名2, …… FROM 另外的表名; 字符串类型的字段值必须用单引号括起来, 例如: ’GOOD DAY’如果字段值里包含单引号’ 需要进行字符串转换, 我们把它替换成两个单引号''. 字符串类型的字段值超过定义的长度会出错, 最好在插入前进行长度校

[ruby on rails] 跟我学之创建数据

通过form来创建数据,本章节将会涉及内容:创建form,用户重导向,渲染views 和 flash消息. 1. views初步 编辑 app/views/posts/index.html.erb这个view文件,如下: <% @posts.each do |post| %> <h2><%=link_to post.title,post%></h2> <%=post.context%><br/><hr/> <% en

java:Hibernate框架(环境搭建,Hibernate.cfg.xml中属性含义,Hibernate常用API对象,HibernteUitl,对象生命周期图,数据对象的三种状态)

1.环境搭建: 三个准备+7个步骤 准备1:新建项目并添加hibernate依赖的jar文件  准备2:在classpath下(src目录下)新建hibernate的配置文件:hibernate.cfg.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configurati