1.模型内定义了软删除–使用数据库删除无法进行真实删除数据

生成的sql语句如下–fetchsql也是一样

2.寻找原因
使用的是数据库删除–在idea使用ctrl追踪进入是model方法,错误!!!
一定要自己去一点一点点开数据库的delete方法 vendor\topthink\think-orm\src\db/builder/Mysql.php

$condition 如下图所示

$this->options[‘data’] 数据如下图所示

所以导致没有真实删除,且数据没有任何变化
3.解决方案
1.使用模型自带的destroy方法,配置true
2.自定义一个方法来修改option的soft_delete属性
public function realDel($where, $isForce = false)
{
list($field, $condition) = $this->getOptions('soft_delete');
//启用软删除
self::where($where)->setOption('soft_delete',[$field,time()])->delete();
//$this->setOption是不行的,必须要self修改
if ($isForce == true){
//启用实际删除
self::where($where)->setOption('soft_delete','')->delete();
}
}
$where[] = ['id','=',768]; $count = $c->realDel($where);
