大佬教程收集整理的这篇文章主要介绍了ruby-on-rails – Rails中的对象版本控制,像Papertrail,但是单独的表,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
>能够存储来自控制器和模型的元信息
>数据被序列化,因此模式更改不会修改版本表
>用于遍历版本的强大方法
>自动跟踪变更责任
>内置版本支持
>差异而不是完整版本
我目前正在考虑为PaperTrail分配每个模型的单独表格,但是如果有现有的解决方案,则希望节省这些费用.
更新:
Vestal版本默认使用单个表,但通过为每个模型提供一个自定义版本类,并使用ActiveRecord的“set_table_name”方法,我可以为每个模型创建单独的表. Vestal版本也内置了diff支持,尽管它的界面不如PaperTrails那么强大.它也缺乏协会支持.
更新2:
由于paperTrail似乎是一个更加活跃的项目,我已经分配了宝石,并添加了类似于vestal版本的自定义类支持,现在允许为每个模型定义单独的表.我的叉子在这里,但我希望很快将它拉入主项目存储库.
https://github.com/benzittlau/paper_trail
class Post < ActiveRecord::Base has_paper_Trail :class_name => 'PostVersion' end class PostVersion < Version # custom behaviour,e.g: set_table_name :post_versions end
这允许您将每个模型的版本存储在单独的表中,如果您有很多版本被创建,这很有用.
以上是大佬教程为你收集整理的ruby-on-rails – Rails中的对象版本控制,像Papertrail,但是单独的表全部内容,希望文章能够帮你解决ruby-on-rails – Rails中的对象版本控制,像Papertrail,但是单独的表所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。