Skip to content

Latest commit

 

History

History
18 lines (13 loc) · 1017 Bytes

record_trash.md

File metadata and controls

18 lines (13 loc) · 1017 Bytes

假删除

当用户在界面上删除记录时,并非物理删除,而是打上“已删除”的标记。用户在系统里查看对象记录时,不会显示这些“已删除”的记录。

假删除功能需要在对象定义中进行设置。否则,执行删除操作,仍然是物理删除,无法恢复数据。

  • 定义对象时,添加开关enable_trash,并置为true

用户执行“删除”操作后

  • 如果对象的enable_trash为false或没有定义,则执行物理删除,在数据库中删除本记录
  • 如果对象的enable_trash为true,则执行假删除,给本记录的相关字段赋值
    • 已删除(is_deleted):赋值为true
    • 删除日期(deleted):赋值为当前日期
    • 删除人(deleted_by):赋值为当前操作用户

用户在系统里查看对象记录时,只会显示is_deleted为空的记录,而不会显示is_deleted为true的记录。

如果要恢复误删除的记录,可由管理员在数据库中将此记录的is_deleted置为空。