字段映射--通过模型类,将表单提交的name值对应表中的字段
class UserModel extends Model{
protecded $_map=array(
'表单name1'=>'表字段1',
'表单name2'=>'表字段2',
//等等
);
}
字段映射设置完毕后
存入数据:字段可以直接存入表单数组,框架自动转换
提取数据:
*注意,提取数据必须是一维数组,换句话说 只支持find,不支持select
$obj=D('Test');
$data=$obj->where(条件)->find();
$res=$obj->parseFieldsMap($data);
dump($res); //就是key变化的数组
自动验证,验证方法:
验证表字段对应的值
1,放到model中 protected $_validate=array(),根据规则自动验证
2,Action中 $this->validate($validate)->create(), $validate为验证规则,手动验证
$model->check(验证数据,验证规则,验证类型); 返回布尔值
命名方法:
事先在model类中定义筛选条件,在action中直接选择条件进行查询
1,在model类中定义protected $_scope=array(筛选条件);
2,使用$Model->scope('筛选条件名')->select();
筛选条件格式:
protected $_scope=array(
'default'=>array( //使用:$Model->scope()->select();
'where'=>'条件', //根据需求选择条件
'field'=>'字段',
'order'=>'排序',
'table'=>'查询表名',
'limit'=>'结果限制',
'page'=>'结果分页',
'having'=>'having查询',
'group'=>'group查询',
'lock'=>'查询锁定',
'distinct'=>'唯一查询',
'cache'=>'查询缓存',
),
'one_order'=>array( //使用:$Model->scope('one_order')->select();
//以上条件
),
'two_order'=>array( //使用:$Model->scope('two_order')->select();
//以上条件
),
//等等规则
);
自动完成:
完成数据自动处理功能,处理默认值,数据过滤以及其他系统写入字段
两种方法:
1,写入到model中
protected $_auto=array(
array(表单字段,填充内容,[填充条件],[附加规则]),
);
2,写入action中
$auto=array(
array(表单字段,填充内容,[填充条件],[附加规则]),
);
1), $Model->setProperty('_auto',$auto);
$Model->create();
2), $Model->auto($auto)->create();
class UserModel extends Model{
protecded $_map=array(
'表单name1'=>'表字段1',
'表单name2'=>'表字段2',
//等等
);
}
字段映射设置完毕后
存入数据:字段可以直接存入表单数组,框架自动转换
提取数据:
*注意,提取数据必须是一维数组,换句话说 只支持find,不支持select
$obj=D('Test');
$data=$obj->where(条件)->find();
$res=$obj->parseFieldsMap($data);
dump($res); //就是key变化的数组
自动验证,验证方法:
验证表字段对应的值
1,放到model中 protected $_validate=array(),根据规则自动验证
2,Action中 $this->validate($validate)->create(), $validate为验证规则,手动验证
$model->check(验证数据,验证规则,验证类型); 返回布尔值
命名方法:
事先在model类中定义筛选条件,在action中直接选择条件进行查询
1,在model类中定义protected $_scope=array(筛选条件);
2,使用$Model->scope('筛选条件名')->select();
筛选条件格式:
protected $_scope=array(
'default'=>array( //使用:$Model->scope()->select();
'where'=>'条件', //根据需求选择条件
'field'=>'字段',
'order'=>'排序',
'table'=>'查询表名',
'limit'=>'结果限制',
'page'=>'结果分页',
'having'=>'having查询',
'group'=>'group查询',
'lock'=>'查询锁定',
'distinct'=>'唯一查询',
'cache'=>'查询缓存',
),
'one_order'=>array( //使用:$Model->scope('one_order')->select();
//以上条件
),
'two_order'=>array( //使用:$Model->scope('two_order')->select();
//以上条件
),
//等等规则
);
自动完成:
完成数据自动处理功能,处理默认值,数据过滤以及其他系统写入字段
两种方法:
1,写入到model中
protected $_auto=array(
array(表单字段,填充内容,[填充条件],[附加规则]),
);
2,写入action中
$auto=array(
array(表单字段,填充内容,[填充条件],[附加规则]),
);
1), $Model->setProperty('_auto',$auto);
$Model->create();
2), $Model->auto($auto)->create();