//这里的图书表表名为book,总共包含两个属性,分别是id和name。
//首先先创建一个模型
//在application目录下创建model目录,在其中新增一个名为Book.php的文件,这个就对应着book表,完成图书表的模型的创建
<?php
namespace app\index\model
use think\Model;
use think\model\concern\SoftDelete;//加入支持软删除功能
//模型类的写法
class Book extends Model{
use SoftDelete;//希望实现软删除的时候使用这一条,否则不加这一条
protected $table = 'book';
protected $pk = 'id';
protected $deleteTime = 'delete_time';
protected $defaultSoftDelete = 0;
};
然后在application目录下面的index目录下面的controller下面完成控制器的相关代码
//首先先实例化一个模型
namespace app\index\controller
user think\Controller;
use app\index\model\Book as BookModel;//导入模型并且设置模型类的别名
class Book extends Controller
{
//实例化模型
public function instance(BookModel $book)//使用依赖注入的方式实例化模型
{
}
//下面开始写增删改查的相关函数
//增
$book = [
[1,10],
[2,20],
[3,30],
[4,40]
};
//这里下面的每种操作都应该封装在一个函数当中,但是此处省略基本的函数体,为了更清楚地了解模型的线管函数的使用并进行比较,此处仅列出了核心的操作语句。
BookModel::insert($data);//通过调用模型类中的方法来完成添加操作
//删
BookModel::destroy(function($query){
$query->where('id','=','1'); })://这里使用推荐的闭包来达成物理删除的目的。
//改
BookModel::update(
['name'=>'50'],
function($query){$query->where('id','=','2'); } );
//查
//这里也使用闭包来创建查询条件
BookModel::get(function ($query){
$query->where('id','=','3');} );//如果查询多条,则将get改为all就可以啦
//软删除
BookModel::destroy(function($query){
$query->where('id','=','2');});
=======================================
总结一下,当我们想要通过模型来完成数据库的增删改查的时候,除了使用Db方法
比较推荐的就是使用模型的相关函数
StaffModel::
get()//获取单条
all()//获取多条
insert()//增
destroy()//删除 或 软删除
update()//改
他们对应的Db相关的函数是——
Db::table('name')->
find()//查询单条
select()//查询多条
insert()//插入单条
insertAll()//插入多条
update()//更新
delete()//删除
======================================