<?php
/**
* Model执行添加或修改前,属性必须先有值
* 1、可手动赋值$model->属性1=值1
* 2、批量赋值$model->create($arr);
* 3、直接create()
* create 将自动分析POST数据,并进行赋值到model的数据对象上
* 再调用add(),save()就可以执行添加或者修改
*/
/**
* 自动验证
* 再TP中,再model中写验证规则,即$_validata属性
* 定义好验证规则后,就可以在使用create方法创建数据对象的时候自动调用
* ThinkPHP自动验证,可以在create创建数据对象的时候自动进行数据验证
*/
protected $_validate = array(
array(验证字段,验证规则,错误提示,【验证条件,附件条件,验证时间】);
);
/**
* 再C层中写对应方法
* goodsController.class.php
* !!!!自动验证需要用model调用create()方法!!!!
* M层声明验证方法
*/
public function goodsAdd(){
if(!IS_POST){
$this->display();
}else{
// var_dump($_POST);
$goodsModel=D('goods');
if(!$goodsModel->create()){//若批量赋值失败
echo $goodsModel->getError();
exit();
}else{
// echo '添加成功';
$goodsModel->add();
}
}
}
/**
* M层中声明验证规则
*/
protected $_validate = array(
//array(验证字段,验证规则,错误提示,【验证条件,附件条件,验证时间段】)
array('goods_name' , '3,10' , '商品名称必须是3到10位' , 1, 'length' , 3),
array('goods_sn' , ' ' , '数据库已存在' , 1 , 'unique' , 3)
);
?>