存储网站文章更改历史的最佳方法是什么?

时间:2010-11-02 06:11:19

标签: php .net python ruby

我们的客户希望我们为网站文章实施更改历史记录。最好的方法是什么?

3 个答案:

答案 0 :(得分:1)

在不了解您的特定应用程序堆栈(框架,语言)的情况下,您至少有两种基本方法:

  • 版本化记录 - 不是将文章作为单行存储在数据库中(或文件系统中的单个文件)并使用更改进行更新,而只需创建一个带有指向其的指针的新记录之前的版本。如果您使用的是Rails,则可能需要查看this Railscast about Model Versioning

  • 顺序差异 - 另一种方法是保留文档的当前副本,但保留用户编辑的历史记录。如果它是一个简单的文本文档,这些编辑可以用diff补丁表示。维基百科“diff”获取更多信息。

如果您仍需要帮助,请告诉我有关您的设置/要求的更多信息,我们可以从中找到答案。

答案 1 :(得分:0)

我认为你正在使用CMS。如果没有,请使用一个。 WordPress是一个好的开始。

如果你是从头开发,通常的方法是有两个表:一个用于页面信息(所以标题,菜单位置等),然后是page_content表,其中包含{{1}列}},page_idcontent

在保存页面时,不是更新数据库表,而是使用页面的ID和保存时间将记录写入timestamp表。这样,当您在前端显示页面时,您只需选择该特定页面ID的最新记录,但您也可以通过page_content查询所有记录来查找该页面的历史记录,并按{{1}排序}。

答案 2 :(得分:-1)

通过标记php,.net,python和ruby,可以通过多种方式实现此目的。你错过了我的头顶perl和jsp的一些。每个都有其优缺点,真正是一个最适合您需求的问题。 PHP可能是花费时间最快的奖励。 Ruby,我假设Ruby on Rails,是当天的自动Buzz Word Bingo。 .Net,你是​​微软每个地方都想要与你的交换服务器和一个漂亮的Outlook API轻松集成吗? 蟒蛇?你喜欢脚本语言,但你对php和ruby太好了。

这些语言中的每一种都有自己的优点和缺点,这实际上取决于你所知道的,你需要花多少钱,以及你的时间框架。