百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
V

vestal_versions

> 编程语言
开源

保持 ActiveRecord 模型变更的干净历史

924 stars0 点赞2 次浏览
访问官网GitHub

工具介绍

保持 ActiveRecord 模型变更的干净历史

最后, DRY ActiveRecord 版本管理功能终于出现了! technoweenie[http://github.com/technoweenie/acts_as_versioned] 的 acts_as_versioned[http://github.com/technoweenie] 是一个很好的开始,但它无法跟上 ActiveRecord 在 2.1 版中引入的脏对象。此外,每个版本化模型都需要自己的版本表,该表重复了原始表中的大部分列。版本表然后被填充了通常重复原始记录的大部分属性的记录。总而言之,这并不太 DRY。

vestal_versions[http://github.com/laserlemon/vestal_versions] 只需要一个版本表(与其父模型多态关联),而且不需要对现有表进行任何更改。但它更加干净,因为它只存储了模型的变化的序列化哈希值。想想现代的版本控制系统。通过遍历变化记录,模型可以恢复到任何时间点。

** 注意: 我正在为这个项目提供所需的支持,以便在 Rails 3 之后的世界中保持其相关性。我很快将完成一个支持 1.9.2+ 和 Rails 3.2+ 的版本,并推送该宝石,在此之前,请使用 git 仓库:

class User > u = User.create(:first_name => "Steve", :last_name => "Richert") => #

u.version => 1 u.update_attribute(:first_name, "Stephen") => true u.name " =>

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Ruby

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言