如何借助deletedAt字段实现数据的假删和真删?

发布于 2022-09-11 23:25:37 字数 515 浏览 17 评论 0

在cms系统中,文章假删至回收站,再到回收站真删是一个非常常见的功能。之前遇到这种问题,我都是手动在文章表里设置一个delete字段,通过布尔值来区分正常文章和假删文章,如果需要真删,则删除整条信息。

但是现在有一个需求就是要使用mysql自带的deletedAt字段来处理删除的业务。在文章的model中我写了:

    {
      timestamps: true,
      paranoid: true,
      deletedAt: 'deletedAt' //在数据库中为deleted_at字段
    }

这样正常展示的文章deleted_at为NULL,一篇文章通过destroy的接口时,就会被打上时间戳,deleted_at就会有记录,查看接口已经找不到这篇文章了,但是在数据库还是能看到的。
那么问题来了,我在回收站界面通过什么条件能够找到被假删的数据呢?以及这些数据怎么进一步执行真删的操作呢?
补充:
通过del()接口并不能真的删掉这个数据,它只是被打上了时间戳,并不能消失。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

屋顶上的小猫咪 2022-09-18 23:25:37

指的是查询SQL?

WHERE deleted_at IS NOT NULL 
想念有你 2022-09-18 23:25:37

`
where deleted_at is null
`
不会被骂死吗?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文