【问题标题】:Versioned associations using vestal_versions?使用vestal_versions 的版本关联?
【发布时间】:2011-03-12 14:05:22
【问题描述】:

在切换到另一个可以支持版本关联的版本控制 gem 之前,我想确定 vestal_versions 是否支持版本关联(似乎不支持),例如 => has_versioning。我还没有查看代码,但我无法从自述文件或 github 上的问题部分找到与版本关联相关的任何内容。帮助将不胜感激!

【问题讨论】:

    标签: ruby-on-rails versioning associations vestal-versions


    【解决方案1】:

    (在写这篇文章的那一刻)在官方的vestal_versions存储库中有一个associations branch,它仍然是一个基本的想法,还没有在master分支中合并。所以我决定使用另一个版本控制 gem,特别是 acts_as_revisable 按照 this 博客文章中的说明进行操作。

    【讨论】:

    • 如果您与我们其他人分享“[an]other versioning gem”,那就太好了
    • 我尝试使用has_versioning,但它炸毁了我的应用程序查找器(适用于所有型号,即使它们没有版本控制)所以我​​决定使用acts_as_revisable 基于这篇文章:withoutscope.com/2009/5/12/…坏事:它不是内置的 gem 功能,还没有经过测试,好事:您可以尝试一个演示 github.com/rich/aar-demo-1,它可以按预期工作。
    【解决方案2】:

    我正在寻找看起来与您的需求非常接近的东西。但我不需要还原关联的对象,只需记录它们。我正在考虑以 nosql 方式处理它。所以我可以保存模型版本,关联将是嵌入文档。

    所以我可以更全面地比较版本。现在我使用 paper_trail,但由于它无法处理关联,因此无法存储与模型关联的标签并查看它如何随时间变化。

    【讨论】:

    • Mongoid 或 Mongomapper 可以很好地处理嵌入式文档,在我的情况下,该应用程序已经在使用 AR 并且对 Mongodb 的更改是相当大的(就时间而言),我尝试了 paper_trail 但正如你说它不处理关联,也许你应该检查这个帖子withoutscope.com/2009/5/12/…
    • 感谢您的反馈。我目前正在使用 paper_trail 但是,正如您所说,它直到现在才处理关联。我会尝试一些东西(也许从头开始),因为它只会改变 1 个模型,所以不会有什么大不了的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-21
    • 2020-04-01
    • 2012-07-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多