Ruby on Rails的:如何跟踪更改,如StackOverflow上实现其修订历史?
-
26-09-2019 - |
题
如果我是用来实现等同于StackOverflow的问题,修订历史记录系统的 Ruby on Rails的,什么将我需要为了做才能达到呢?我创建就像一个wiki,用户贡献的内容可以被其他人更新网站。我需要能够跟踪这些变化的历史,但我不熟悉如何实现这一点。
解决方案:
在简单地说,这种工作方式是创建一个额外的表来跟踪变化。表中的每一行具有一个数据的“快照”,因为它存在的记录被改变之前(或只是改变的数据)。
有一个数字,已经做了大部分工作的Ruby宝石。这里是宝石的列表处理版本/修订历史。它看起来像纸径是目前这样做的最流行的宝石。莱恩贝茨记录了RailsCast提供的rel="nofollow">概述。
解决方案
当条目被编辑,你不删除(旧)项,你只需要添加一个新的版本号的新条目。当你想检索显示的条目,你挑一个最高版本号。当你想要检索的记录以显示其修订历史,您可以通过版本号挑选所有这些,对其进行排序。
其他提示
我知道这是旧的,但谁运行到这个人,你应该签纸径
不隶属于 StackOverflow