摘要:<?php //模型文件 namespace app\index\model; use think\model; use think\model\concern\SoftDelete; class Admins extends Model { use SoftDelete;
<?php
//模型文件
namespace app\index\model;
use think\model;
use think\model\concern\SoftDelete;
class Admins extends Model
{
use SoftDelete;
//建立名称为admins的数据表
protected $table = 'admins';
//设置主键
protected $id = 'id';
//设置软删除时间戳的字段名
protected $deleteTime = 'delete_time';
//软删除字段的默认值
protected $defaultSoftDelete = 0;
}
<?php
//控制器文件
namespace app\index\controller;
use think\Controller;
use app\index\model\Admins;
class Admins extends Controller
{
//通过依赖注入实例化模型
public function instance(Admins $admin)
{
//在数据表中新增一条记录
$admin->name = 'skywalker';
$admin->sex = 'male';
$admin->age = '10';
$admin->save();
$admin->name = '尼古拉斯赵四';
$admin->sex = 'female';
$admin->age = '58';
$admin->save();
$admin->name = '盯裆猫';
$admin->sex = 'female';
$admin->age = '40';
$admin->save();
}
//添加数据
public function creat()
{
$data=['name'=>'刘能','sex'='male','age'=>50,'salary'=>2000];
$field=['name','sex','age'];
Admins::create($data,$field);
}
//模型查询
public function query()
{
//使用闭包查询单条记录
$admin = Admins::get(function($query){
$query->where('sex','male')
->where('age',10);
});
//查询多条记录
$res = Admins::all(function($query){
$query->where('age','>',20)
->where('sex','female');
});
//返回记录应该为赵四和盯裆猫
}
//更新记录
public function update(){
$res = Admins::get(['name'=>'天行者','id'=>1]);
//复杂更新
Admins::update(['age'=>\think\Db::raw('age+10')] ,function($query){
$query->where('age','<',50);
});
}
}
//软删除记录
public function softDelete()
{
Admins::destroy(1);
//查看软删除回收站
$res = Admins::onlyTrashed()->select();
\var_dump($res);
}
批改老师:天蓬老师批改时间:2018-12-27 14:57:53
老师总结:模型的基本操作, 底层仍是数据库的查询构造 器, 只不过进行了高级封装罢了