2017年6月3日,星期六

本周 Rails:class_attribute 默认值、mini_racer 等!

发布者 repinel

大家好!我是Roque,为大家带来Rails世界的最新消息。

本周的 Rails 贡献者!

本周有32位贡献者让 Rails 变得更好。其中三位是首次贡献!如果您想帮忙,请查看 issues 列表

允许为 class_attribute 声明默认值

Rails 现在可以更轻松地为类属性设置默认值,例如 class_attribute :timeout, default: 5

将 therubyracer 替换为 mini_racer

使用 JavaScript 和 Sprockets 支持生成的新应用程序将使用 Ruby 平台的 mini_racer。这是一个更快、更可靠的解释器。

新增

为 Active Support 添加一周的上一天和下一天 API

方法 prev_occurringnext_occurring 接受星期几,并根据 DateTime 返回相应的值,例如 DateTime.now.prev_occurring(:monday)

修复

修复 number_to_human 的四舍五入计算

这修复了 Rails 5 中引入的一个回归问题,在这种情况下,number_to_human(1_000_000, units: { unit: 'meter', thousand: 'kilometer' }) 会返回 "1" 而不是 "1000 kilometer"

修复带区域设置时的不可数表达式的复数形式

以前,pluralizesingularize 等方法只会使用英语的不可数规则,而不是传入区域设置的规则。

rename_table 重命名主键索引

以前,rename_table 仅在列数据类型为顺序类型时重命名主键索引。主键类型为 UUID 的表仍会保留旧名称。

改进

为系统测试中的 poltergeist 或 capybara-webkit 允许其他选项

如果使用 poltergeistcapybara-webkitdriven_by 将将其注册为驱动程序,并通过 `:options` 参数设置传递的其他选项。

请参阅驱动程序文档了解可以传递的选项。

本周的更新就到这里了,我们无法涵盖所有更改,但如果您有兴趣,可以随时查看 commits。下周再见!