Mar*_*rth 16 versioning ruby-on-rails acts-as-versioned vestal-versions
我正在寻找一个插件/动作来允许我的模型版本化.找到可用解决方案的列表很困难.到目前为止我收集了:
acts_as_versionedsimply_versionedvestal_versions最后两个解决方案只需要一个版本表 - 这听起来不错,但我对于如何通过这种方式处理迁移的简易性感到不好(因为它们将状态序列化为字符串).
另一方面,acts_as_versioned有点尘土飞扬(1月最后一次提交).这些中有任何最近的经验吗?或者我可能忽略了其他解决方案(或叉子)?
Rya*_*yan 21
我一直在使用名为"paper_trail"的宝石.它似乎是目前在线的最佳解决方案.它具有审计和版本控制功能.
http://github.com/airblade/paper_trail
希望这可以帮助!
vestal_versions我上周已经使用过,是的,这是最先进的替代方案,至少在空间方面:您只存储您真正需要的东西。这是一个活跃的项目,1.0 版本将是一个巨大的更新,包含许多新功能;只要看看 1.0 分支就知道我的意思了。
但在玩了一下之后,我发现了一个很大的缺陷:性能。每次你需要一个特定的版本时,你都必须遍历所有中间版本,重建你需要的版本。这也意味着您无法直接编辑或删除版本,因为它可能会扰乱修改,从而破坏链条。为此,您需要充分处理版本,而vestal_versions目前还没有这样做。
这样,对于我遇到的问题,我最终得到了自己的版本控制解决方案。我需要性能以及快速删除和编辑版本的能力,因此我牺牲了存储并开发了类似于act_as_versioned.
但是,如果您不需要这个并且不必经常恢复,我强烈推荐vestal_versions。它是一种先进、可靠且活跃的解决方案,背后有一位充满热情的开发人员。
| 归档时间: |
|
| 查看次数: |
5742 次 |
| 最近记录: |