2021年7月23日,星期五

Active record 改进以及更多

由 morgoth85 发布

大家好,我是 Wojtek,将为大家介绍本周的许多重要更新。

为每个数据库禁用 schema dump

Schema dump 在应用程序的所有数据库中默认是开启的。现在可以通过在数据库配置文件中设置 schema_dump: false 来为特定数据库关闭它。

为 belongs_to 关联添加变更跟踪方法

Active Record 中新增了两个方法:association_changed?association_previously_changed?(假设关联名为 :association)。

对未授权的开放式重定向抛出错误

redirect_to 添加了 allow_other_host 选项。可以通过设置 ActionController::Base.raise_on_open_redirects = true 来选择此行为。

更新 Capybara 驱动程序

系统测试中弃用 poltergeistwebkit (capybara-webkit) 驱动程序注册(将在 Rails 7.1 中移除),并添加了 cuprite

修复 Float::NaN 和 BigDecimal::NaN 的脏检查

Ruby 中的 Float::NaN 和 BigDecimal::NaN 是特殊值,无法使用 == 方法 进行比较。

使 ActiveModel::Errors#inspect 更简洁易读

现在它将只输出错误检查,省略基础对象。

添加 Middleware#remove

如果找不到中间件,将抛出错误。

自上次以来,有 24 位贡献者 参与了 Rails 的开发。所有更改可以在 此处 查看。下周再见!