您好,我正在研究一个应用于网络项目的解决方案,我想听听您的意见。 我将让我的用户可以编辑许多页面的某些部分。 数据将保存在数据库中,我想知道维护以前版本的最佳选择是什么。 您认为我必须将它们保存在不同的数据库表中吗? 即使考虑到许多人都会做出贡献的最坏(或最好的情况,这取决于观点)情况,最好的选择是什么?
感谢您的建议。
最佳答案
这是维基媒体(Wikipedia)用来跟踪用户更改的基本概念。您也许可以将其应用到您的项目中。
有一个page table 。它有一个标题、一些有关页面的其他元数据和一个修订 ID。修订 ID 引用 revision table 。修订表包含有关修订的信息,例如用户 ID 和有关更新的注释。它还引用了 text table 。文本表包含页面的实际文本(由用户编辑)。
关于versioning - 用户编辑文本并保存以前的版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10458043/