使用 FastAPI 与 starlette-admin 实现软删除和回收站视图
标准的 DELETE 操作是不可挽回的。如果操作员误点了一下,或者某个自动化清理任务用错了过滤器,数据就会丢失,除非你执行一次复杂的数据库恢复。实现"软删除"可以缓解这一风险:它只是把记录标记为已删除,而不是将其从数据库中永久移除。这样一来,数据恢复就变成了一次简单的更新操作。
本指南演示如何在 FastAPI 应用中借助 starlette-admin 实现软删除模式。我们将构建一个完整的解决方案,其中用到:
- 单个数据库模型
- 两个彼此独立的管理视图
- 一个
deleted_at时间戳 - 一个专用的回收站界面,用于恢复或永久清除记录
查看完整的可运行代码:examples/advanced/01-soft-delete。