Eyoucms程序开发:软删除
软删除
版本 | 调整功能 |
---|---|
5.0.2 |
deleteTime 属性改为非静态定义 |
在实际项目中,对数据频繁使用删除操作会导致性能问题,软删除的作用就是把数据加上删除标记,而不是真正的删除,同时也便于需要的时候进行数据的恢复。
要使用软删除功能,需要引入SoftDelete
trait,例如User
模型按照下面的定义就可以使用软删除功能:
namespace app\index\model;
use think\Model;
use traits\model\SoftDelete;
class User extends Model
{
use SoftDelete;
protected $deleteTime = 'delete_time';
}
5.0.2
版本之前deleteTime
属性必须使用static
定义。
deleteTime
属性用于定义你的软删除标记字段,ThinkPHP5
的软删除功能使用时间戳类型(数据表默认值为Null
),用于记录数据的删除时间。
可以用类型转换指定软删除字段的类型,建议数据表的所有时间字段统一一种类型。
定义好模型后,我们就可以使用:
// 软删除
User::destroy(1);
// 真实删除
User::destroy(1,true);
$user = User::get(1);
// 软删除
$user->delete();
// 真实删除
$user->delete(true);
默认情况下查询的数据不包含软删除数据,如果需要包含软删除的数据,可以使用下面的方式查询:
User::withTrashed()->find();
User::withTrashed()->select();
如果仅仅需要查询软删除的数据,可以使用:
User::onlyTrashed()->find();
User::onlyTrashed()->select();
如果你的模型定义了
base
基础查询,请确保添加软删除的基础查询条件。
相关文档
- 虫虫博客群发功能虽操作简单,实际使用却状况百出
- 下载旺道SEO优化软件,界面丑功能差,老站长满心失落
- 惊删电脑重要文件?别怕!快照回档功能来救你
- 试用站优云:界面复古功能全,自动优化能否给网站带来改变?
- 乐云SEO排名软件:界面丑但功能实在,是SEOer偷懒工具?
- 网站诊断:评估性能,功能和用户体验
- 聊聊SEO领域的老古董工具seo808及其基本功能
- 交换朋友链接在在线营销中的重要性和功能
- 设计师在线房屋的概念:重要性,功能和见解
- 在Baidu上介绍十个强大的工具:功能和实际应用
- Win7优化大师官网全解析,功能亮点与安全下载指南,老用户必看技...
- 用了百度申请闭站功能后 出现问题
- 小旋风万能蜘蛛池x8.3免权如何实现永久使用?2025最新破解教...
- 小旋风万能蜘蛛池完美破版2025亲测可用?功能限制与安全风险全解...
- 小旋风万能蜘蛛池2025实:3大核心功能提升网站收录率90%
- 小旋风收音机如何免费听万+频道?2025最新版扫码租车功能实测
- 小旋风收音机2025破解版载安全吗?官方正版渠道推荐,破解与正版...
- 电商站群必备!旺道SEO优软件批量管理功能深度测评
- 快速删除百度快照服务推:专业团队助您解决隐私问题
- 2025个人与企业注册百度数差异解读:资质要求+功能对比
上一篇: Eyoucms程序开发:只读字段
下一篇: Eyoucms程序开发:类型转换