大家好,我是 zzak!お久しぶりです! 这次我将回顾过去一个月左右的 Rails 更新。请做好准备!有很多内容需要了解!!
此功能最初从 HEY 中提取,为 Active Record 模型添加了加密属性。您可以在 指南中了解更多信息。
Active Support 的缓存获得了期待已久的显著速度提升。
此优化应能减少内存开销并加快启动时间。
通过将 AR::Base.logger 转换为 class_attribute,我们获得了显著的性能提升。
这为使用 i18n 的大型应用程序提供了更好的组织方式。例如:config/locales/en/models.yml 而不是 config/locales/models.en.yml
此更改为 Ruby 的 Range 对象添加了一个 Active Job 序列化器。
基于 ActiveRecord::FinderMethods#sole,此方法返回可枚举对象中的唯一项。如果不存在项或存在多个项,它将引发异常。
由于 Ruby 2.4 包含了这些方法,Rails 可以开始使用原生版本以显著提高性能。
通过限制生成的计数查询,此优化为多行操作提供了显著的性能提升。
现在尝试在生产环境中使用 SQLite 时会发出警告,可以通过将 config.active_record.sqlite3_production_warning 设置为 false 来禁用此警告。
这解决了 has_one…through 关系中表位于不同数据库集群的问题。
此功能添加了对这两个 Content-Security-Policy 标头的支持,您可以在 MDN 上阅读更多相关信息。
任何依赖此中间件的应用程序仍然可以手动激活它,否则将发出弃用警告并替换为假的。
现在 Rails.application.credentials.aws.access_key_id 将返回与 Rails.application.credentials.aws[:access_key_id] 相同的值。
添加了将二进制数据实时流式传输到浏览器的能力,类似于 send_data 对静态文件的作用。
这允许您在任何控制器中从云存储流式传输 blob。
此功能为 assert_no_changes 提供了一个可选的关键字参数,用于指定预期的初始值。