2015 年 3 月 27 日星期五

本周 Rails 快讯:alias_method_chain 下线,PostgreSQL 类型转换等

作者 _cha1tanya

大家好!

我是 Prathamesh,带来本周 Rails 的摘要。我们来看看修复了哪些问题,添加了哪些功能。准备、开始、Go!

本周的 Rails 贡献者

本周有 40 人为 Rails 做出贡献,其中 7 人是新人。你想帮忙吗?查看 问题跟踪器,开始让 Rails 变更好。

顺便说一句,XavierKasper 为每周贡献者的链接添加了 永久链接功能。所以每个每周贡献者链接都是永久存在的!

新功能

如果查询获取的记录数超过固定数量,则发出警告

是否遇到了查询获取数千条记录并变慢的问题?现在,如果你使用 active_record.warn_on_records_fetched_greater_than 配置选项,查询获取的记录数超过配置值时,你将收到一个友好的警告。

已弃用

弃用 alias_method_chain,建议使用 Module#prepend

还记得老朋友 alias_method_chain 吗?它经历过一段美好的时光。但是现在它将在 Rails 5 中被弃用,建议使用 Ruby 2.0 中引入的的 Module#prepend

改进

将 PostgreSQL 的类型转换移出 Active Record

我们刚刚 完成 ,将 PostgreSQL 中各种数据类型的类型转换从 Active Record 移至 PostgreSQL 适配器。

更友好的请求变体访问

使用此补丁,你现在可以使用 request.variant.phone?request.variant.tablet? 等来检查当前请求的变体。

已修复

将包装作业类的名称传递给 Sidekiq 以用于日志记录

如果你在 Sidekiq 日志中找不到你的作业类,而是看到了奇怪的 ActiveJob::JobWrapper,不要担心。现在你将在日志中找回你的作业类,因为 ActiveJob 将把包装好的类名传递回 Sidekiq。

在使用 has_many :through 加入表时,使用实际表名

之前,在使用 has_many :through 关联加入表时,Active Record 并没有使用实际表名。它会生成错误的 SQL,导致与计算方法(如 #count)一起使用时出现 ActiveRecord::InvalidStatement 错误。不用担心,现在它已经修复了!

为单数表生成具有单数名称的固定装置文件

之前,如果表名使用 ActiveRecord::Base.pluaralize_table_names = false 进行单数命名,生成的文件名仍然会是复数形式的。现在不用担心了!自现在起,单数表名将获得单数 fixture 文件。

夏季机会

Rails Girls 程序员暑期项目

查看 Rails Girls 程序员暑期项目。你可以提交你的 开源项目 来进行纳入。你也可以帮助 募捐 这个活动。

总结

这就是本周 Rails 的全部内容了。和往常一样,还有更多内容未能在此提及,但欢迎你自己 查看 这些内容!

P.S. 如果您喜欢这份简报,何不与您的朋友 分享一下 呢?:)如果您希望参与该项目,请随时联系 Godfrey——您可以通过许多方式帮助我们制作更加出色的这份简报!