模型命名:使用去掉前缀的表名(大驼峰).php 注意:使用模型中记得修改配置文件 // 数据集返回类型 'resultset_type' => 'collection', //手册-》数据库-》数据集 1、路由 2、控制器中的代码(当前是UserController控制器)
3、模型中的代码(当前是User模型) public function userAdd($data){ //插入单条,方式1,使用父类 $this->data($data); $this->save(); //插入单条,方式2,使用orm的Db Db::name('user')->insert($data); //插入多条 $this->saveAll($data); } //使用模型1,需要将数据库配置文件中的'resultset_type' => 'collection',改成数据集这样方便操作 public static function userSelect(){ //使用模型的 静态方法。本类调父类中的静态方法 //$res = self::get('1'); //查单条 $res = self::all([1,3,4]); //查多条 return $res->reverse()->toArray(); //reverse()倒序是手册-》数据库-》数据集中的方法 } //使用模型2 public function selectRatioResult(){ //使用orm的Db $dbRes = Db::name('user')->where(['id'=>2])->find(); dump($dbRes); //Db返回的是数组 //使用模型的 $modelRes = $this->where(['id'=>1])->find(); //模型返回的是对象 return $modelRes->toArray(); //只有数据集对象,才可以转成数组(前提是要改数据库配置文件) } //【关联模型】方法名的定义规则,一般是模型名 public function userInfo(){ /* * user 是a表。 * user_info是b表,通过user_id字段和a表的id做外键关联。 * 第1个参数是b表模型名,第2个参数是b表的外键,第3个参数是a表的主键 * */ //return $this->hasOne('UserInfo','user_id','id'); //【一对一】 return $this->hasMany('UserInfo','user_id','id')->field('email'); //【一对多】 } |
|