2020年11月2日,星期一

多数据库改进、错误修复以及更多!

由 gregmolnar 发布

大家好,我是Greg,为您带来Rails框架的最新消息。

在错误页面中显示未完成的迁移

这个PR将待处理迁移的详细信息添加到待处理迁移的错误消息中,这样您就可以从错误信息中了解到哪些迁移是待处理的。

添加为每个参数设置编码的能力

以前,您可以跳过编码,这将导致操作中的所有参数都使用ASCII_8BIT编码。但在本次更改后,您可以为控制器中操作的任何一个参数指定`param_encoding`。您可以在此处找到一个示例。

修复使用crossorigin属性时资源被获取两次的问题

当您使用`javascript_include_tag`或`stylesheet_link_tag`加载带有`crossorigin`属性的脚本或CSS时,Rails目前会导致某些浏览器两次获取这些资源。这是因为链接头部的预加载指令和资源本身上的`crossorigin`必须匹配,浏览器才能重用资源。
这个PR对此进行了更改,使链接头部的指令包含与传递给资源本身的值相同的`crossorigin`值,从而允许浏览器重用预加载的资源。

实现`connecting_to`方法

有时您需要一个不同的默认连接,但又没有使用块调用连接。例如,以读取模式启动控制台。这个PR增加了脚本在启动时设置特定连接的能力,同时保留`connected_to`对应用程序代码的行为。

无法读取yaml以创建数据库任务时发出警告

对于多数据库,Rails尝试通过读取
`database.yml`在Rails应用程序启动之前生成任务,但有些复杂情况会导致这种情况不可行,Rails将简单地发出警告,说明它无法从`database.yml`推断出数据库任务。

修复TimeWithzone错误

当我们将`TimeWithZone`时间与`DateTime`进行比较时,存在一个四舍五入问题,而这个PR修复了这个问题。

自上周以来,已有29位贡献者为Rails做出了贡献。查看所有更改的详细列表。下周再见!