我正在尝试更深入地了解 Ruby on Rails 框架,并且我一直在谷歌上搜索我听说过但从未理解过的术语。
其中两个术语是“ActionPack”和“Rack”
根据其中每一个的文档:
行动包:
Action Pack 是一个用于处理和响应 Web 请求的框架。它提供了路由机制(将请求 URL 映射到动作),定义实现动作的控制器,并通过渲染视图生成响应,视图是各种格式的模板。简而言之,Action Pack 提供了 MVC 范例中的视图和控制器层。
架子:
Rack 在支持 Ruby 和 Ruby 框架的网络服务器之间提供了一个最小接口。
从我一直在做的谷歌搜索中,我将以下模型放在了我的脑海中,但我仍然有点不确定:
如果我理解正确,Rack 更像是一个规范/标准,用于说明应用程序/程序应该接受什么作为输入/产生什么作为输出(执行此操作的程序被认为是“机架兼容”)。ActionPack 是 rails 用来执行此操作的程序。所以请求会去:Client HTTP request --> Server --> ActionPack --> The Rest of Rails etc.
它是否正确?还是我误会了?