摘要://這里的圖書表表名為book,總共包含兩個屬性,分別是id和name。//首先先創(chuàng)建一個模型//在application目錄下創(chuàng)建model目錄,在其中新增一個名為Book.php的文件,這個就對應(yīng)著book表,完成圖書表的模型的創(chuàng)建<?phpnamespace app\index\modeluse think\Model;use think\model\concern\SoftDelet
//這里的圖書表表名為book,總共包含兩個屬性,分別是id和name。
//首先先創(chuàng)建一個模型
//在application目錄下創(chuàng)建model目錄,在其中新增一個名為Book.php的文件,這個就對應(yīng)著book表,完成圖書表的模型的創(chuàng)建
<?php
namespace app\index\model
use think\Model;
use think\model\concern\SoftDelete;//加入支持軟刪除功能
//模型類的寫法
class Book extends Model{
use SoftDelete;//希望實現(xiàn)軟刪除的時候使用這一條,否則不加這一條
protected $table = 'book';
protected $pk = 'id';
protected $deleteTime = 'delete_time';
protected $defaultSoftDelete = 0;
};
然后在application目錄下面的index目錄下面的controller下面完成控制器的相關(guān)代碼
//首先先實例化一個模型
namespace app\index\controller
user think\Controller;
use app\index\model\Book as BookModel;//導(dǎo)入模型并且設(shè)置模型類的別名
class Book extends Controller
{
//實例化模型
public function instance(BookModel $book)//使用依賴注入的方式實例化模型
{
}
//下面開始寫增刪改查的相關(guān)函數(shù)
//增
$book = [
[1,10],
[2,20],
[3,30],
[4,40]
};
//這里下面的每種操作都應(yīng)該封裝在一個函數(shù)當(dāng)中,但是此處省略基本的函數(shù)體,為了更清楚地了解模型的線管函數(shù)的使用并進行比較,此處僅列出了核心的操作語句。
BookModel::insert($data);//通過調(diào)用模型類中的方法來完成添加操作
//刪
BookModel::destroy(function($query){
$query->where('id','=','1'); })://這里使用推薦的閉包來達成物理刪除的目的。
//改
BookModel::update(
['name'=>'50'],
function($query){$query->where('id','=','2'); } );
//查
//這里也使用閉包來創(chuàng)建查詢條件
BookModel::get(function ($query){
$query->where('id','=','3');} );//如果查詢多條,則將get改為all就可以啦
//軟刪除
BookModel::destroy(function($query){
$query->where('id','=','2');});
=======================================
總結(jié)一下,當(dāng)我們想要通過模型來完成數(shù)據(jù)庫的增刪改查的時候,除了使用Db方法
比較推薦的就是使用模型的相關(guān)函數(shù)
StaffModel::
get()//獲取單條
all()//獲取多條
insert()//增
destroy()//刪除 或 軟刪除
update()//改
他們對應(yīng)的Db相關(guān)的函數(shù)是——
Db::table('name')->
find()//查詢單條
select()//查詢多條
insert()//插入單條
insertAll()//插入多條
update()//更新
delete()//刪除
======================================
批改老師:天蓬老師批改時間:2019-04-10 17:23:08
老師總結(jié):軟刪除的原理,與商品上架也下架是一樣的, 是用更新加標志位的方式來實現(xiàn)刪除效果