2023年1月20日,星期五

Active Record 重组、CurrentAttributes 名称限制以及更多!

由 gregmolnar 发布

您好,我是 Greg,为您带来 Rails 的最新变动。

当 CurrentAttributes 使用受限制的属性名称时,会引发异常
setreset 等属性名称不应与 ActiveSupport::CurrentAttributes 一起使用,因为它们会与该类的公共 API 发生冲突。通过此更改,当使用受限制的属性名称时,会引发 ArgumentError

为 Active Record 添加 regroup 方法 此拉取请求为 Active Record 添加了 regroupregroup! 方法。以下是如何使用它的示例:

Post.group(:title).regroup(:author)

将 assert_emails 更改为返回已发送的电子邮件
在此拉取请求之前,assert_emails 只返回 true 或在断言失败时引发异常。从现在开始,如果发送了单个电子邮件,则返回单个 Mail::Message。如果发送了多封电子邮件,则返回一个数组。

将 ::normalize 重命名为 ::normalize_value_for
::normalize 方法接受一个属性名称和一个值,并对该值进行类型转换,应用为该属性声明的任何规范化。由于大多数类型的类型转换工作方式,给定值的类型可能与属性类型非常不同。这可能导致 ::normalize 方法和 ::normalizes 方法之间产生混淆,因此为防止此类混淆,此更改将 ::normalize 重命名为 ::normalize_value_for

上周我们有 28 位贡献者! 

下次再见!

订阅以通过邮件获取这些更新。