摘要:<?php namespace app\index\controller; use think\Db; use think\Controller; use app\index\model\UserInfo as UserInfoModel; class UserInfo extends Control
<?php namespace app\index\controller; use think\Db; use think\Controller; use app\index\model\UserInfo as UserInfoModel; class UserInfo extends Controller { // 通過依賴注入實例化 public function getIns(UserInfoModel $userInfoModel) { dump($userInfoModel->getName()); $userInfoModel->name = '風(fēng)清揚'; $userInfoModel->skill = '傳授令狐沖獨孤九劍'; $userInfoModel->password = sha1('123456'); $userInfoModel->save(); return '添加數(shù)據(jù)的id:'.$userInfoModel->user_id; } public function get() { // 調(diào)用模型get $res = UserInfoModel::get(9); dump($res->name.' and '.$res->skill); // 閉包實現(xiàn)復(fù)雜條件查詢 $res1 = UserInfoModel::get(function($query){ $query->where('age','<',40)->where('status = 1'); }); dump($res1); // 直接使用Db類 UserInfoModel = Db::table('user_info'); $result = UserInfoModel::field('user_id,name,skill')->where('status = 0')->find(); dump($result); } public function getAll() { $res = UserInfoModel::all(function($query){ $query->field('name,skill')->where('skill','like','嵩山派%'); }); dump($res); foreach($res as $key => $value){ echo $key.' ----- '.$value.'<br>'; } foreach($res as $key => $value){ echo $value->name.' ---- '.$value->skill.'<br>'; } } public function getRequest() { $age = $this->request->param('age')? :40; $name = $this->request->param('name')? :'左冷禪%'; $res = UserInfoModel::all(function($query) use ($age,$name){ $query->field('name,age,skill')->where('age','<',$age)->where('name','like',$name.'%'); }); dump($res); } public function update() { // 使用閉包 $res = UserInfoModel::update(['age' => \think\Db::raw('age + 10 ')],function($query){ $query->where('age','>',50); }); dump($res); // 使用構(gòu)造器函數(shù) $res2 = UserInfoModel::where('age > 50')->data(['age' => Db::raw('age + 10')])->update(); dump($res); } public function create() { $data = [ 'name' => '儀琳師妹', 'age' => 18, 'skill' => '恒山派弟子', 'password' => sha1(123456), ]; $fields = ['name','age','skill','password']; $res = UserInfoModel::create($data,$fields); dump($res); // 通過構(gòu)造器添加 $data2 = [ 'name' => '儀琳師妹2', 'age' => 18, 'skill' => '恒山派弟子', 'password' => sha1(123456), ]; $res2 = UserInfoModel::insert($data2); } public function destroy() { // 使用閉包 $res = UserInfoModel::destroy(function($query){ $query->where('user_id = 23'); }); dump($res); // 使用構(gòu)造器刪除 $res2 = UserInfoModel::where('user_id = 22')->delete(); dump($res2); } public function softDelete() { $res = UserInfoModel::destroy(function($query){ $query->where('user_id','=',24); }); dump($res); echo('<hr>'); $res2 = UserInfoModel::field('name,skill')->select(); dump($res2); echo ('<hr>'); $res3 = UserInfoModel::withTrashed()->select(); dump($res3); $res4 = UserInfoModel::onlyTrashed()->select(); dump($res4); echo '<hr>'; } }
老師我有問題:為什么在Model模型里面,我use think\model\concern\SoftDelete; 在類的里面還要use SoftDelete;兩個use SoftDelete,最開始我類里面沒有use還報錯沒有這個控制器。
批改老師:查無此人批改時間:2019-04-16 10:05:28
老師總結(jié):完成的不錯。 SoftDelete是一個trait,你可以去看下trait類的文檔介紹。繼續(xù)加油。