ABAB Pedia

Ruby on Rails

Ruby on Rails(常简称 Rails)是用 Ruby 语言编写的开源全栈 Web 应用框架,按模型—视图—控制器(MVC)模式构建数据库驱动的 Web 应用。它由 David Heinemeier HanssonDavid Heinemeier HanssonDavid Heinemeier Hansson 是丹麦程序员、企业家和赛车手,Web 框架 Ruby on Rails 的创建者,与 Jason Fried 共同拥有软件公司 37signals(Basecamp、HEY 的开发商)。他与 Fried 合著《Rework》等商业书籍,2014年在勒芒24小时耐力赛赢得组别冠军,2024年起任 Shopify 董事,并创建了 Linux 发行版 Omarchy。点击查看完整词条 创建,2004年首次公开发布,以“约定优于配置”等设计理念著称,GitHub、ShopifyShopifyShopify 是起源于加拿大渥太华的商业软件公司,为商家提供网上商店、实体零售、支付、订单和库存管理工具。业务起点是 Tobias Lütke 等人于2004年创办的滑雪板网店 Snowdevil,独立电商平台于2006年推出。公司于2015年上市,目前在纳斯达克及多伦多证券交易所使用 SHOP 股票代码。点击查看完整词条 等公司在生产环境中使用。

本页目录22 节
词条资料

早年:从 Basecamp 开发中提取

Rails 诞生于 37signals 开发项目管理软件 Basecamp 的过程:创建者 David Heinemeier Hansson 用 Rails 构建 Basecamp,同时借 Basecamp 的开发打磨 Rails。到2007年12月,他已为这一框架工作约四年半。⁠[1][2]

Rails 0.5 公开发布

2004年7月24日,Hansson 发布 Rails 0.5.0,并表示文档和示例仍待补充,但“真正的艺术家要交付”,项目将在公开中继续成长。Rails 0.5 通过 RubyForge 发布,头五天下载357次。rubyonrails.org 2006年的一篇文章则把7月25日记为两周年纪念日。⁠[1][1][3][4]

发布半年

发布半年后,Rails 已推出15个版本,gem 下载量超过一万次,IRC 频道有153人在线;Dave Thomas 正在撰写第一本介绍 Rails 的书。⁠[3][3][3]

Rails 1.0

首次公开发布15个月后,Rails 1.0 推出。这一版本汇集了数百名贡献者的数千次修订、工单与补丁,重点是稳定已有功能而非增加新特性;同日上线由 37signals 重新设计的 rubyonrails.org 网站。⁠[5][5][5][5]

Rails 2.0

Rails 2.0 历时约一年完成,主要改进集中在 REST 风格的资源路由,例如以斜杠取代分号表示自定义方法、新增命名空间路由和列出全部路由的 rake routes 任务;框架同时移除 ActionWebService、改用 ActiveResource,在 SOAP 与 REST 之争中选择了 REST。⁠[2][2][2][2][2][2]

宣布与 Merb 合并

2008年12月,Rails 宣布将另一个 Ruby Web 框架 Merb 并入 Rails 3,结束两个项目之间的争执:Merb 团队把其主要理念带入 Rails 3,Yehuda Katz 加入 Rails 核心团队。合并计划包括让 Rails 可以只运行最小核心,以及引入 Merb 的性能优化。⁠[6][6][6][6]

Rails 3.0

Rails 3.0 开发约两年,汇集逾1600名贡献者的工作。Active Record 改用 ARel 查询引擎,使作用域和查询可组合并延迟执行;路由语法按 REST 风格重写;依赖管理改用 Bundler。⁠[7][7][7][7][7]

Rails 4.0

Rails 4.0 着重让服务器端渲染的应用不必走客户端 JavaScript 加 JSON 的路线也能足够快,相关做法先在新版 Basecamp 中试验:基于键过期的“俄罗斯套娃”缓存、使页面切换接近单页应用速度的 Turbolinks,以及声明式 ETag。该版本还加入流式响应,并默认可在多线程服务器上安全运行。⁠[8][8][8][8][8][8]

Rails 5.0

Rails 5.0 经过四个测试版和两个候选版后发布,两项主要特性是处理 WebSocket 的全新框架 Action Cable,以及面向只需 JSON 后端的客户端或原生应用的 API 模式(rails new backend --api)。默认开发服务器也由 Webrick 改为 Puma。⁠[9][9][9][9]

Rails 6.0

Rails 6.0 新增处理来信的 Action Mailbox、富文本编辑的 Action Text、多数据库支持、并行测试、默认集成 Webpacker,并以 Zeitwerk 重写代码加载器。2019年有341名代码贡献者提交改进;GitHub、Shopify 和 Basecamp 等已在生产环境中运行预发布版数月。⁠[10][10][10]

Rails 7.0

Rails 7.0 借助浏览器对 ES6/ESM 的支持、HTTP/2 和 import maps 标准,默认前端不再依赖 Node;由 Turbo 和 Stimulus 组成的 Hotwire 成为新应用的默认选择,取代 Turbolinks 和 Rails UJS。需要 Node 的项目则可通过 jsbundling-rails 接入 esbuild、rollup.js 或 Webpack 等打包工具。⁠[11][11][11][11][11]

The Rails Foundation 成立

2022年11月,非营利组织 The Rails Foundation 成立,宗旨是改进 Rails 生态的文档、教育、推广与活动。Cookpad、Doximity、Fleetio、GitHub、Intercom、Procore、Shopify 和 37signals 八家创始核心成员共同出资100万美元,各派代表进入董事会,由 Hansson 任主席。基金会取得全部 Rails 商标的长期独家许可,并负责 rubyonrails.org 网站与社交媒体;框架的技术演进仍由 Rails 核心团队负责。⁠[12][12][12][12][12][12]

Rails 8.0

Rails 8.0 以“无需 PaaS”为主题,预置 Kamal 2 部署工具和 Thruster 代理,可把应用部署到云虚拟机或自有硬件。新的 Solid Cable、Solid Cache 和 Solid Queue 三个数据库适配器让 SQLite 也能承担 WebSocket 消息、缓存和后台任务,不再必须依赖 Redis;资源管道由 Propshaft 取代 Sprockets,并新增身份验证系统生成器。⁠[13][13][13][13][13][13]

Rails 8.1

Rails 8.1 汇集逾500名贡献者约2500次提交,新增可从中断步骤续跑的 Active Job 续跑机制、结构化事件报告、本地 CI 与 Markdown 渲染。发布时 Shopify 和 HEY 已在生产环境中运行该版本数月。⁠[14][14][14][14][14][14]

Agents on Rails 第二阶段基准

2026年9月,rubyonrails.org 发布 Agents on Rails 基准的第二阶段,以 37signals 看板应用 Fizzy 上按产品人员口吻编写的20个功能工单,测试 AI 模型能否独立交付完整功能;第一阶段测试的是模型是否了解 Rails。⁠[15][15][15]

Rails 8.1.4

2026年9月24日,Rails 8.1.4 发布,截至2026年10月为最新版本。⁠[16][17]

Rails World 2026 演讲上线

Rails World 2026 是首次在美国举办的 Rails World 大会,在奥斯汀举行,吸引来自58个国家的逾1000名 Rails 开发者,为历届规模最大;四场主题演讲都引发了关于 AI 的讨论。2026年10月1日全部演讲视频上线,下一届定于2027年10月在里斯本举行。⁠[18][18][18][18]

主题:设计信条

Hansson 撰写的《Rails Doctrine》列出九条支柱:为程序员的幸福而优化、约定优于配置、“菜单由厨师决定”(omakase)、不拘一种范式、推崇优美代码、提供锋利的刀、重视集成系统、进步重于稳定、搭一顶大帐篷。Rails 社区正是围绕一系列关于编程与程序员本质的“异端”思想凝聚而成。⁠[19][19][17]

主题:框架组成与 AI 定位

Rails 是全栈框架,Model 层的 Active Record 把数据库行表示为带业务逻辑的对象,Action Controller 处理请求,Action View 用 Ruby 与 HTML 混合编写模板,Action Dispatch 负责路由;框架还内置邮件收发、WebSocket、后台任务和云端文件存储等功能。截至2026年10月,已有逾六千人为 Rails 贡献过代码。⁠[20][20][17][17][17][17][17][17]

截至2026年10月,Rails 官网把 Rails 定位为适合 AI 编码代理的框架,理由是清晰的约定、较少的代码量(更省 token)以及数十年积累的公开 Rails 代码;官网还以“一人框架”(The One Person Framework)为题,称 Rails 提供完整的产品技术栈,单人开发者借助 AI 编码代理可以承担更广泛的工作。⁠[17][21][21][21][21]

主题:许可与商标

Rails 以 MIT 许可证发布,许可文件的版权署名为 David Heinemeier Hansson。“Rails”“Ruby on Rails”及 Rails 标识是 Hansson 的注册商标,独家许可给 The Rails Foundation 管理;在商业场合用以暗示获得认可或存在关联须事先获准。截至2026年10月,基金会有十家核心成员,每家每年出资7.5万美元,执行董事为 Amanda Perino。⁠[20][22][23][23][24][24][24]

关联机构、网站与公开账号

GitHub 代码仓库:官方链接:https://github.com/rails/rails(在新窗口打开)。⁠[17]

来源

  1. Rails 0.5.0: The end of vaporware! (Loud Thinking)(在新窗口打开)
  2. Rails 2.0: It's done!(在新窗口打开)
  3. Celebrating six months anniversary!(在新窗口打开)
  4. Rails is 2 years old(在新窗口打开)
  5. Rails 1.0: Party like it's one oh oh!(在新窗口打开)
  6. Merb gets merged into Rails 3!(在新窗口打开)
  7. Rails 3.0: It's ready!(在新窗口打开)
  8. Rails 4.0: Final version released!(在新窗口打开)
  9. Rails 5.0: Action Cable, API mode, and so much more(在新窗口打开)
  10. Rails 6.0: Action Mailbox, Action Text, Multiple DBs, Parallel Testing, Webpacker by default, and Zeitwerk(在新窗口打开)
  11. Rails 7.0: Fulfilling a vision(在新窗口打开)
  12. The Rails Foundation kicks off with one million dollars(在新窗口打开)
  13. Rails 8.0: No PaaS Required(在新窗口打开)
  14. Rails 8.1: Job continuations, structured events, local CI(在新窗口打开)
  15. Agents on Rails: Stage 2. Can a model ship a feature?(在新窗口打开)
  16. Rails Version 8.1.4 has been released!(在新窗口打开)
  17. Ruby on Rails: Accelerate your agents with convention over configuration(在新窗口打开)
  18. Rails World 2026 recap: All talks online(在新窗口打开)
  19. The Ruby on Rails Doctrine(在新窗口打开)
  20. rails/README.md(在新窗口打开)
  21. Rails and AI — Ruby on Rails(在新窗口打开)
  22. rails/MIT-LICENSE(在新窗口打开)
  23. Ruby on Rails Trademark policy(在新窗口打开)
  24. The Rails Foundation(在新窗口打开)