欢迎使用 Rails
Rails 是什么?
Rails 是一个 Web 应用程序框架,它包含根据 模型视图控制器 (MVC) 模式创建数据库支持的 Web 应用程序所需的一切内容。
理解 MVC 模式是理解 Rails 的关键。MVC 将应用程序划分为三层:模型、视图和控制器,每层具有特定的职责。
模型层
模型层 表示领域模型(如帐户、产品、人员、帖子等),并封装特定于应用程序的业务逻辑。在 Rails 中,数据库支持的模型类派生自 ActiveRecord::Base
。 Active Record 可让你以对象形式显示数据库行的数据,并使用业务逻辑方法修饰这些数据对象。尽管大多数 Rails 模型都由数据库支持,但模型也可以是普通的 Ruby 类,或者实现了 Active Model 模块提供的接口集的 Ruby 类。
视图层
视图层 由“模板”组成,这些模板负责提供应用程序资源的适当表示。模板可以采用多种格式,但大多数视图模板都是嵌入了 Ruby 代码(ERB 文件)的 HTML。视图通常被渲染为生成控制器响应或生成电子邮件正文。在 Rails 中,视图生成由 Action View 处理。
控制器层
控制器层 负责处理传入的 HTTP 请求并提供适当的响应。通常,这意味着返回 HTML,但 Rails 控制器也可以生成 XML、JSON、PDF、移动特定视图等。控制器加载并处理模型,并渲染视图模板以生成适当的 HTTP 响应。在 Rails 中,传入的请求由 Action Dispatch 路由到一个适当的控制器,控制器类派生自 ActionController::Base
。Action Dispatch 和 Action Controller 在 Action Pack 中捆绑在一起。
框架和库
Active Record、Active Model、Action Pack 和 Action View 都可以在 Rails 之外独立使用。
除此之外,Rails 还附带
-
Action Mailer,用于生成和发送电子邮件的库
-
Action Mailbox,可用于在 Rails 应用程序内接收电子邮件的库
-
活动作业,一种用于声明作业并使他们在各种队列后端上运行的框架
-
Action Cable,一个将 WebSockets 与 Rails 应用程序集成的框架
-
Active 存储,一个将云和本地文件附加到 Rails 应用程序的库
-
Action Text,一个处理富文本内容的库
-
Active Support,一组效用类和标准库扩展,它们对于 Rails 很有用,也可以在 Rails 之外独立使用
入门
-
如果您尚未在命令提示符下安装 Rails
$ gem install rails
-
在命令提示符下,创建一个新的 Rails 应用程序
$ rails new myapp
其中“myapp”是应用程序名称。
-
将目录更改为
myapp
并启动 Web 服务器$ cd myapp $ bin/rails server
使用
--help
或-h
运行以获取选项。 -
转到
http://localhost:3000
,您将看到包含 Rails 和 Ruby 版本的 Rails 启动屏幕。 -
按照指南开始开发您的应用程序。您可能会发现以下资源很方便
贡献
我们鼓励您为 Ruby on Rails 做出贡献!请查阅为 Ruby on Rails 贡献指南,了解如何进行操作的指南。 加入我们!
尝试报告 Rails 中可能的安全漏洞?请查阅我们的安全策略,了解如何进行操作的指南。
我们期望在 Rails 及其子项目代码库、问题跟踪器、聊天室和邮件列表中互动的每个人都遵循 Rails 行为准则。
许可证
Ruby on Rails 根据MIT 许可证发布。