我正在尝试实现软删除,通过在每个文档上添加一个名为
deletedOn
的字段来实现,它是一个时间戳或null。但到目前为止,这给我的查询带来了一些麻烦,因为我需要在每个查询中过滤掉这些文档。在UI中暴露了deletedOn
用于永久删除,但如果客户联系支持部门,我们可以通过将deletedOn
字段设置为null来“恢复”被“删除”的数据。在NoSQL数据库中还有更好的建模方式吗?我倾向于使用不同的集合,例如contacts
和contacts_deleted
,当一个contact
被删除时,将其移动到相应的另一个集合中。但我是新手,所以不知道哪种方式会更好。