在模块admin目录下创建model文件夹,model文件夹下创建Admin.php(跟控制器一样首字母大写),然后在该文件中写入代码:
namespaceapp\admin\model;
use think\Model;
class Adminextends Model
{
public function addadmin($data){
此处是具体的添加代码
}
}
以上代码只是模型的结构,注意addadmin需要传参,那么如何传参呢?看控制器那边的代码:
namespaceapp\admin\controller;
usethink\Controller;
useapp\admin\model\Admin as AdminModel;
class Adminextends Controller
{
public function add()
{
if(request()->isPost()){
$admin = new AdminModel();
$res =$admin->addadmin(input('post.'));
if($res){
$this->success('添加管理员成功!',url('lst'));
}else{
$this->error('添加管理员失败!');
}
return;
}
return view();
}
}
以上代码中的这两行:
$admin = newAdminModel();
$res =$admin->addadmin(input('post.'));
的意思就是创建模型类Admin的对象,通过对象调用addadmin方法就可以传参,仔细一看发现模型Admin类名在这里怎么变成了AdminModel,原因是这样,此控制器和模型都是Admin类,名称冲突了,所以在引入模型Admin类时要重命名:
useapp\admin\model\Admin as AdminModel;
下面写上在模型中添加管理员的方法:
namespaceapp\admin\model;
use think\Model;
class Adminextends Model
{
public function addadmin($data){
if(empty($data) || !is_array($data)){
return false;
}
if($this->save($data)){
return true;
}else{
return false;
}
}
}
先判断传过来的参数是否为空或者不为数组,如果数据正确的话,用模型添加方法save添加数据,返回添加数据的条数。