tpframe之删除数据

删除(真删除、软删除)很简单

一、控制器

在User.php控制器添加删除操作

<?php
namespace app\frontend\controller;
use \tpfcore\Core;
class User extends FrontendBase
{
public function add()
{
IS_POST && $this->jump(Core::loadModel($this->name)->saveUser($this->param));
return $this->fetch("add");
}
public function edit(){
IS_POST && $this->jump(Core::loadModel($this->name)->editUser($this->param));
return $this->fetch("edit",[
"list"=>Core::loadModel($this->name)->listUser($this->param)
]);
}
public function del(){
$this->jump(Core::loadModel($this->name)->delUser($this->param));
}

}

二、服务层

在service层添加User.php

<?php
// +----------------------------------------------------------------------
// | Author: yaoyihong <510974211@qq.com>
// +----------------------------------------------------------------------
namespace app\frontend\service;

use app\common\service\ServiceBase;
use \tpfcore\Core;
/**
 * 基础服务
 */
class User extends FrontendBase
{
	public function delUser($data){
	   $validate=\think\Loader::validate($this->name);
	    $validate_result = $validate->scene('del')->check($data);
	    if (!$validate_result) {
	        return [RESULT_ERROR, $validate->getError(),null];
	    }
	    return Core::loadModel($this->name)->delUser($data);
	}
}

三、逻辑层

public function delUser($data){
$result=self::deleteObject($data,true);
if($result){
return [RESULT_SUCCESS, "操作成功",null];
}else{
[RESULT_ERROR, "操作失败",null];
}
}

del验证规则自己去写...

这就完成一个简单的删除功能了

特别说明

删除分真删除与软删除(改变状态),默认是软删除,状态字段对应的是status (0正常,-1删除)

真删除直接调用deleteObject(where,true)即可,where为你要删除的条件

软删除的话第二个参数为false,但是,如果你的删除标识字段不是status,你就得这样调用deleteObject(where,false,"删除字段标识")

爆料早知道:TPFrame v3.1已经发布,赶快下载体验吧!我有好想法