Ruby on Rails 5.0 发布
创始人
2024-03-01 17:29:16
0

经过了六个月的努力,发布了 4 个 beta 版本、2 个 RC 版本,Rails 5.0 终于正式发布了!

Rails 社区的公告中说,“这是由数百位贡献者,历经上千次提交而达成的一个新的里程碑,Rails 5.0 无疑是迄今为止最好、最完善的 Rails 版本。 经过了这么久的发展,社区依然具有如此活力,感谢每一位帮助过我们的人们!”

Ruby on Rails

在本次发布的 Rails 5.0 中,有两大亮点:

Action Cable

Action Cable 是一个重新打造的框架,用于在 Rails 中控制 WebSocket。它是一个完全整合的解决方案,包括了连接管理、用于服务器端处理的 channel 层以及客户端交互的 JavaScript 层。它增加了易用性,让设计类似聊天、提示、现场等实时功能更加容易。如果你想看看它的具体表现,你可以看看它在 Basecamp 3 强大的表现。

Action Cable 中最棒的地方是你可以在你的 WebSocket 里面访问你的整个 Active Record 和 PORO 域模型。如果你想为 WebSocket 响应复用服务器端模板的话,甚至还有一个全新打造的 ActionController::Renderer 系统可以使你在控制器之外渲染你的模板。

在开发模式时,Action Cable 可以运行在你的应用内部,你只需要将默认的开发服务器从 Webrick 切换到 Puma 即可。在产品环境中,你也可以让 Action Cable 运行自己的服务器。

API 模式

Rails 不仅是你使用服务器端 HTML 模板渲染来构建全栈应用的最佳选择,而且也是开发客户端 JavaScript 或原生应用的好伴侣,只需要用 JSON 和后端通讯即可。新推出的 -api 模式可以让你使用 rails new backend --api 创建一个新的 Rails 应用,这样会采用 JSON 而不是 HTML 作为应用骨架和配置。

这个功能还需要更多的完善,不过这是一个良好的开端。

其它亮点

  • 不用再使用 rake 命令了,统一采用一个 rails 命令即可。比如现在用 bin/rails db:migrate 取代了 bin/rake db:migrate
  • 新的属性 API
  • 生成器创建的所有模型都以 ApplicationRecord 为默认父类。
  • 等等……

具体你应该看看各个部分的变更日志,都有不少变化:

更多的细节,你可以看看完整的 Rails 5.0 发布公告,Claudio B. 做了一篇简短的演示来介绍了他喜欢的一些改进(和一些功能的去除),DHH 本人也录制了一段基础性的介绍视频: 让我们用 Rails 5 打造一个博客

此外要注意,根据 Rails 的维护策略,Rails 5.0 的发布代表着以后将只会对 5.0.x 进行错误修复,安全问题的修复会包括 5.0.x 和 4.2.x,(如果 5.1 出来了就是 5.1.x、5.0.x 和 4.2.x)。也就是说,**4.1.x 及其以下版本原则上不支持了!**而且,Ruby 2.2.2 及以上版本也将仅支持 Rails 5.0 及以上版本。

(题图来自:mobiloitte.com)

相关内容

ByeBug走得太深了。在...
要解决"ByeBug走得太深了。在'next'步进时进入了Ruby...
2025-01-12 20:02:27
不知道如何编写Rubyon...
通常可以使用 ActiveRecord 提供的查询方法来编写查询语...
2025-01-12 03:01:25
不要在每个类方法中使用se...
在每个类方法中不使用self,并且不使用单例模式的解决方法是使用类...
2025-01-11 02:32:08
不需要使用 Ruby Tr...
以下是一个解决方法,展示如何在不使用Ruby Travis-CI ...
2025-01-10 15:01:47
不显示初始化的某些部分-R...
在Ruby中,我们可以使用“#”符号来注释代码,这意味着代码的部分...
2025-01-10 08:01:31
不同类之间的Ruby Te...
以下是关于Ruby TempFile类的不同行为的示例代码:创建临...
2025-01-09 09:00:39

热门资讯

PHP最佳实践(译) 简介PHP是一门复杂的语言,经过多年折腾,使其不同版本之间高度不一致,有时还有些bug。 每个版本都...
值得收藏的 27 个机器学习的... 机器学习 ( Machine Learning ) 有很多方面,当我开始研究学习它时,我发现了各种各...
硬核观察 #885 苹果 AR... 苹果 AR 眼镜被无限期推迟据报道,由于技术上的挑战,苹果公司已经无限期推迟了其轻型增强现实(AR)...
Helix:高级 Linux ... 说到 基于终端的文本编辑器,通常 Vim、Emacs 和 Nano 受到了关注。这并不意味着没有其他...
为什么计量 IT 的生产力如此... 在某些行业里,人们可以根据一些测量标准判定一个人的生产力。比如,如果你是一个零件制造商,可以通过一个...
8个有趣的Linux提示与技巧... 我们时不时给你带来关于Linux的提示与技巧。和这个系列保持一致,这里有8个我们从读者收到最有趣的提...
8 个提升你的隐私防护的开源密... 使用一些顶级开源密码管理器,确保你的登录凭证安全无虞。密码管理器是一项非常有用的实用程序。在你想寻找...
2020 年的 GitHub ... 距离 2020 年结束只剩下区区 24 天,我们即将结束魔幻的 2020 ,迎来新的一年,新的一年或...
开源新闻速递:openSUSE... 今日关注openSUSE 项目组的 Dominique Leuenberger 在他的周报中说:“这...
KDE4.11 Beta1 正...   KDE 项目工作组刚刚发布了 KDE Software Compilation 4.11 Bet...