模型代码:(app/common/model/User.php)
<?php
namespace app\common\model;
use think\Model;
use traits\model\SoftDelete;
class User extends Model
{
use SoftDelete;
protected $pk = 'user_id'; //设置主键
protected $table = 'ng_user'; //设置数据表名
//定义自动完成
protected $autoWriteTimestamp = 'datetime'; // 开启自动写入时间戳字段
protected $createTime = 'create_time'; //设置创建时间字段
protected $updateTime = 'update_time'; //设置修改时间字段
protected $deleteTime = 'delete_time';//设置删除标记字段(删除时间)
protected $defaultSoftDelete = 0; //设置删除标记字段默认值
}
控制器代码:
<?php
namespace app\index\controller;
use think\Controller;
use app\index\model\User;
//模型管理数据表
class User extends Controller
{
//模型查询多条记录,利用回调函数传参(闭包)
public function query(){
$data = User::all(function($query){
$query->where('user_id','>',1);
});
echo '查询user表中id大于1的数据<br>';
dump($data);
}
//模型删除
public function delete(){
User::destroy(function($query){
$query->where('user_id',1);
});
}
//查询软删除
public function softDelete(){
//查询结果不包含软删除的数据
$res = User::where('user_id','>',1)->select();
dump($res);
//包括软删除的数据
$res1 = User::withTrashed()->Where('user_id','>',1)->select();
dump($res1);
//只查询软删除的数据
$res2 = User::onlyTrashed()->select();
dump($res2);
}
}