2018 年 9 月 30 日星期日

多环境凭证支持、Action Cable 通道单元测试等等!

作者:_cha1tanya

大家好!我是来自印度浦那的 Prathamesh,为您带来 Rails 世界的最新消息。

凭证的多环境支持

现在可以为每个环境设置凭证。如果当前环境的文件存在,它将优先于 **config/credentials.yml.enc**。例如,生产环境首先查找
config/credentials/production.yml.enc

支持 Action Cable 通道单元测试

此更改引入了 **ActionCable::Channel::TestCase**,它提供了对通道类进行单元测试的功能。

使用不支持可回收缓存密钥的存储时引发错误

某些缓存存储不支持可回收缓存密钥。这可能会导致生成永远不会失效的缓存条目。

此更改添加了一个检查以确保如果正在使用可回收缓存密钥,则缓存存储需要显示它支持此版本方案。

改进多数据库的迁移路径

此更改添加了一个选项,可在生成模型时指定迁移路径。

bin/rails g model Room capacity:integer –migrations-paths=db/kingston_migrate

此外,还添加了一个 快捷数据库选项,它使用当前环境的数据库配置。

在生产中积极定义属性方法

模型的属性方法目前在第一次实例化该模型时延迟定义,即使 **config.eager_load** 为 true也是如此。

现在它们在应用程序启动时进行定义,以节省数据库往返成本。有一个相关的讨论和一个请求,当且仅当存在架构缓存时才进行更改 only when schema cache exists

在 Rails 中执行 psql 命令时忽略 psqlrc 文件

.psqlrc 文件可能会影响命令的执行,这些命令可能通过阻止或导致副作用来阻止执行。

Rails 现在通过使用 **-X** 选项忽略它。

Rails 也 在为 PostgreSQL 数据库加载 structure.sql 文件时忽略它

添加一种方法,以便在执行作业时检查参数的子集

当调用 **assert_performed_with** / **assert_enqueued_with** 时,参数需要与作业传递的内容完全匹配。

此更改使仅检查作业中是否传递了参数的子集成为可能。当作业有太多参数时,这很方便。

50 个人 在过去两周内为 Rails 做出了贡献。查看完整的变更列表。如果您有兴趣提供帮助,我们有大量的未决问题。希望下周能看到您的名字出现在这个列表中!