0

我正在编写一个应用程序,其中我希望用户能够编辑的数据库中有一些公开可用的信息。这些信息不像 wiki 那样是文本的,但在概念上是相似的,因为编辑使公共信息越来越接近真相。更改将影响多个表,并且需要在影响公共表之前自动检查更新。

我正在设计,我想知道是否有任何最佳实践可能有助于解决某些特定问题。

  1. 我想提供撤消功能。
  2. 我想向用户展示他们所有更改的综合结果。
  3. 当用户说他们已经完成时,我需要检查底层公共数据以确保它没有被其他人更改。

我目前的计划是让用户在一组设置为私人工作区的表格中工作。一旦他们准备好,他们就可以启动一个过程来检查所有内容并更新公共表。可以使用命令模式保存到表格来记录撤消。

有没有我可能错过的技术或有用的论文或模式?

提前致谢!

4

1 回答 1

0

我会这样做:

  • 使用仅插入数据库,您永远不会更新数据只添加新行
  • 每行都有一个有效的起始日期、一个有效的截止日期以及谁进行了更改
  • 通过查询读取数据,其中valid to date = null,并且该行被批准,这给出了最新的行
  • 当用户添加数据时,他可以通过选择他添加的最后一行来查看他的更改
  • 当用户对他所做的更改感到满意时,他可以将它们标记为已批准
  • 当他们被批准后,其他用户可以看到他们
  • 撤消不是问题,因为您拥有所有以前的版本,您可以将一行标记为不再被批准并恢复到以前的版本。
于 2010-04-14T20:14:28.407 回答