2015 年 2 月 20 日,星期五

本周的 Rails:http_cache_forever、AR::Base.suppress,以及更多!

发布者:claudiob

我的情人节致 Ruby on Rails 的信

“亲爱的 Rails,还记得我们初次见面吗?
那时的你只有 1.2 版,我与 Perl 和 PHP 处于不健康的关系中。

我在图书馆里遇见你,我立刻就爱上了你。
七年来,你让我的代码更具可读性,我的技能也更强。

你是我见过的最漂亮的框架,而且永远都会是。
我迫不及待地想看到你变成 5.0 版。”—— Claudio

本周的贡献者

显然,我并不是唯一一个爱上 Ruby on Rails 的人。本周有 36 位程序员为 Rails 做出了贡献,其中有 10 位是首次贡献。继续爱吧!

新功能

将 http_cache_forever 添加到 ActionController

该新方法非常适合缓存永不过期的结果,例如静态页面。

添加 ActiveRecord::Type.register

你现在可以使用符号引用针对你的适配器特定的任何数据库类型,例如
ActiveRecord::Type.register(:money, MyMoneyType)

添加 ActiveRecord::Base.suppress

将一个块包装在 suppress 中将阻止任何保存操作影响数据库。查阅公关,了解真实世界的示例。

已改进

将 :time 选项添加到 ActiveRecord::Base.touch

你现在可以使用与当前时间不同的时间来触碰一个 ActiveRecord 实例。

已删除

删除 RecordTagHelper

帮助器 div_forcontent_tag_for 将在 Rails 5 中消失。如果你仍然需要它们,请获取 record_tag_helper gem!

删除 ActiveModel::Errors getter/setter

如果你曾经使用 person.errors.get(:name) person.errors[:name] 读取错误消息,那么你现在应该 切换到 person.errors.messages[:name]add_on_emptyadd_on_blank 也消失了

更新:你毕竟应该使用 person.errors[:name]!使用 person.errors.add(:name, ...) 进行追加。

总结

这就是本周的 Rails的全部内容。和往常一样,还有更多更改,我们这里没有足够的空间来介绍,但你可以随时 自行查看

P.S. 如果你喜欢这份邮件时讯,为什么不 分享给你的朋友 呢? :) 如果你希望参与此项目,请联系 Godfrey – 有很多方式可以帮助让此邮件时讯更棒!