2015年1月16日,星期五

本周 Rails:tokens 迁移,method_source 等

由 kaspth 发布

来自我们的服务器,这是本周的 Rails 时讯!

一如既往,我们将为您带来来自 Rails 的精彩提交、拉取请求等内幕消息。

我是 Kasper,我准备为您奉上这篇独家报道。我在眼前的键盘上敲击,让文字跃然纸上。这真是一幅织锦。

让我们开始吧!

本周 Rails 贡献者

33 位贡献者成就了本周的辉煌。拉取请求被合并,新的友谊就此诞生……我甚至好像听到有人说他们在网上看到了一只猫。这真是难得一见,也是让本周与众不同的原因之一。感谢大家!

迁移和模型生成器中的 Token

作为对上周 has_secure_token 的后续,迁移和模型生成器都可以创建 token 属性。
rails g migration add_auth_token_to_users auth_token:tokenrails g model user auth_token:token
模型生成器会自动在您的新模型文件中添加 has_secure_token :auth_token

新功能

默认 Gemfile 中添加了 method_source

在 Rails 5 中,当您生成新应用时,您会在 Gemfile 中找到 ‘method_source’。这个 gem 扩展了 Method 类,增加了 sourcecomment 方法,以帮助您进行调试。在 此评论 中有一个很好的使用示例。

修复

接受验证允许使用 ‘1’ 或 true

以前 validates_acceptance_of 只接受 ‘1’ 作为有效的属性值。现在您可以将 true 赋值给一个属性,验证就会通过。

时间列将感知应用程序时区

在 Rails 5.1 中,您的时间列将遵循您 Rails 应用程序的时区。为了使升级路径更顺畅,已添加了 config.active_record.time_zone_aware_types 选项。请参阅 此处的 弃用警告以获得帮助。

再多说一句™

验证回调已使用上下文进行测试

您可能还没有听说过的一个功能是验证上下文,它允许您指定一个回调应该运行的上下文。例如:before_validation callback, on: :create。该链接展示了一些在 before/after_validation 上进行的测试。 此处 是一个更高级的示例。

总结

以上就是本周 Rails 的全部内容。一如既往,还有很多我们没来得及在此介绍的更改,但请随意 自行查看

附注:如果您喜欢这份新闻通讯,为什么不 分享给您的朋友?:) 如果您希望参与本项目,请随时联系 Godfrey – 有很多方法可以帮助我们让这份新闻通讯更精彩!