Yii框架 模型类 Models

1.什么是模型

  模型是MVC模式中的一部分,是表现业务数据、规则和逻辑的对象。

  可通过继承 yii\base\Model 或它的子类定义模型,基类yii\base\Model 支持许多实用的特性:

    属性:表现业务数据,可以像普通类属性或数组一样被访问;

    属性标签:指定属性显示出来的标签;

    块赋值:支持一步给许多属性赋值;

    验证规则:确保输入数据符合所声明的验证规则

    数据导出:允许模型数据导出为自定义格式的数组

  Model类也是更多高级模型如 Active Record 活动记录的基类,更多关于这些高级模型的详情请参考相关手册。

2.属性的定义和访问

  像普通类属性或数组一样被访问

  $model = new ContactForm();

  $model[‘name‘]=‘weixi‘;

  echo $model[‘name‘];

3.块赋值

  只用一行代码将用户所有的表单输入填充到一个模型,非常方便。

4.验证规则

  当模型接收到终端用户输入的数据,数据应当满足某种规则(称为验证规则,也称业务规则)。

  可调用 yii\base\Model::validate() 来验证接收到的数据。

原文地址:https://www.cnblogs.com/houbingxu2014025681/p/9386145.html

时间: 2024-10-07 22:01:51

Yii框架 模型类 Models的相关文章

django 框架模型之models常用的Field,及常见错误原因及处理方案。

1. django 模型models 常用字段 1.models.AutoField 自增列 = int(11) 如果没有的话,默认会生成一个名称为 id 的列 如果要显式的自定义一个自增列,必须设置primary_key=True. 2.models.CharField 字符串字段 必须设置max_length参数 3.models.BooleanField 布尔类型=tinyint(1) 不能为空,可添加Blank=True 4.models.ComaSeparatedIntegerFiel

YII框架的类自动加载机制

YII之所以能实现快速的自动加载类文件,是因为它通过两种途径来实现. 先看文件 vendor\yiisoft\yii2\BaseYii.php 里面的 autoload 方法 public static function autoload($className) { if (isset(static::$classMap[$className])) { //先去类地图里面找 $classFile = static::$classMap[$className]; if ($classFile[0]

YII框架入门

一.安装 php运行环境安装包:http://www.phpstudy.net/a.php/207.html Yii安装包: https://github.com/yiisoft/yii2/releases/download/2.0.6/yii-basic-app-2.0.6.tgz (Yii2的基本应用程序模板) https://github.com/yiisoft/yii2/releases/download/2.0.6/yii-advanced-app-2.0.6.tgz (Yii2的高级

django的models模型类的常用数据类型和选项

django框架的models模块ORM框架,能够让我们通过编写类的方式,帮助我们自动生成数据库表. 生成的数据库表名为 应用模块名称_类名 数据库表中字段名 如果我们没有在参数中指定,就是我们写的类属性名. 通过编写类属性的方式,我们可以创建数据库表. 1 首先编写类: 稍后详细 2 然后生成迁移文件: python manage.py makemigrations 3 执行迁移: python manage.py migrate 三步骤,django会帮助我们生成相应的sql语句创建数据库表

Yii框架2.0的模型

模型是 MVC 模式中的一部分, 是代表业务数据.规则和逻辑的对象. 可通过继承 [[yii\base\Model]] 或它的子类定义模型类,基类[[yii\base\Model]]支持许多实用的特性: 属性: 代表可像普通类属性或数组一样被访问的业务数据; 属性标签: 指定属性显示出来的标签; 块赋值: 支持一步给许多属性赋值; 验证规则: 确保输入数据符合所申明的验证规则; 数据导出: 允许模型数据导出为自定义格式的数组. 属性: 所有 non-static public非静态公有 成员变量

yii框架之gii创建数据表对应的model类

一.首先是在数据库中建立工程需要的表: 二.然后,配置对应文件: 在工程目录下yiiProject\protected\config\main.php.在50行定义了db应用组件,下面后一段注释掉了的mysql的链接配置项,我们将未注释的db注释掉,然后打开mysql链接代码并填写相关信息即可完成mysql链接配置项. 即,把下面代码         'db'=>array(             'connectionString' => 'sqlite:'.dirname(__FILE_

YII开发技巧分享——模型(models)中rules自定义验证规则

YII的models中的rules部分是一些表单的验证规则,对于表单验证十分有用,在相应的视图(views)里面添加了表单,在表单被提交之前程序都会自动先来这里面的规则里验证,只有通过对其有效的限制规则后才能被提交,可以很有效地保证表单安全和信息的有效性.还是给大家具体说明一下: 以下是视图(views)部分的简单代码: <?php $form=$this->beginWidget('CActiveForm', array( 'id'=>'tag-form', 'enableAjaxVa

用Yii框架实现AR类自动记录日志

定义一个新的AR类MyActiveRecord并继承CActiveRecord类,然后定义日志处理事件RecordLog: public function RecordLog($objEvent) {        //记录日志操作,需要在各个类中各自实现 } 2. 在类初始化的时候为记录日志事件附加一个事件处理程序,即绑定日志记录事件: public function init() {        //绑定日记记录事件 $this->attachEventHandler('onRecordL

自定义MVC框架之工具类-模型类

截止目前已经改造了5个类: ubuntu:通过封装验证码类库一步步安装php的gd扩展 自定义MVC框架之工具类-分页类的封装 自定义MVC框架之工具类-文件上传类 自定义MVC框架之工具类-图像处理类 这个模型类支持以下功能: >连贯操作,js叫链式操作,连贯操作的函数可以打乱顺序,最后一个函数必须是执行语句的那个函数,如select, delete, update, add等 如 $db->table( 'user' )->where( 'id=1' )->select() 等