跳至内容 跳至搜索

欢迎使用 Rails

什么是 Rails?

Rails 是一个 Web 应用程序框架,包含创建数据库支持的 Web 应用程序所需的一切,遵循 模型-视图-控制器 (MVC) 模式。

了解 MVC 模式是理解 Rails 的关键。MVC 将您的应用程序划分为三个层:模型、视图和控制器,每个层都有特定的职责。

模型层

模型层 代表域模型(如帐户、产品、人员、帖子等),并封装特定于您的应用程序的业务逻辑。在 Rails 中,数据库支持的模型类派生自 ActiveRecord::BaseActive Record 允许您将数据库行中的数据表示为对象,并用业务逻辑方法修饰这些数据对象。尽管大多数 Rails 模型都由数据库支持,但模型也可以是普通的 Ruby 类,或者实现由 Active Model 模块提供的接口集的 Ruby 类。

视图层

视图层 由“模板”组成,这些模板负责提供对应用程序资源的适当表示。模板可以采用多种格式,但大多数视图模板是带有嵌入式 Ruby 代码的 HTML(ERB 文件)。视图通常呈现为生成控制器响应或生成电子邮件正文。在 Rails 中,视图生成由 Action View 处理。

控制器层

控制器层 负责处理传入的 HTTP 请求并提供合适的响应。通常,这意味着返回 HTML,但 Rails 控制器也可以生成 XML、JSON、PDF、移动专用视图等。控制器加载和操作模型,并渲染视图模板以生成适当的 HTTP 响应。在 Rails 中,传入的请求由 Action Dispatch 路由到相应的控制器,控制器类派生自 ActionController::Base。Action Dispatch 和 Action Controller 捆绑在 Action Pack 中。

框架和库

Active RecordActive ModelAction PackAction View 都可以在 Rails 之外独立使用。

此外,Rails 还附带以下内容:

  • Action Mailer,用于生成和发送电子邮件的库

  • Action Mailbox,用于在 Rails 应用程序中接收电子邮件的库

  • Active Job,用于声明作业并在各种排队后端上运行作业的框架

  • Action Cable,用于将 WebSockets 集成到 Rails 应用程序的框架

  • Active Storage,用于将云文件和本地文件附加到 Rails 应用程序的库

  • Action Text,用于处理富文本内容的库

  • Active Support,一个包含对 Rails 有用且可以在 Rails 之外独立使用的实用程序类和标准库扩展的集合

入门

  1. 如果您还没有安装 Rails,请在命令提示符下安装

    $ gem install rails
    
  2. 在命令提示符下,创建一个新的 Rails 应用程序

    $ rails new myapp
    

    其中“myapp”是应用程序名称。

  3. 更改目录到 myapp 并启动 Web 服务器

    $ cd myapp
    $ bin/rails server
    

    使用 --help-h 运行以获取选项。

  4. 转到 https://127.0.0.1:3000,您将看到带有 Rails 和 Ruby 版本的 Rails 启动画面。

  5. 按照指南开始开发您的应用程序。您可能会发现以下资源很有用

贡献

我们鼓励您为 Ruby on Rails 贡献!请查看 贡献到 Ruby on Rails 指南,了解如何进行的指南。加入我们!

试图报告 Rails 中可能存在的安全漏洞?请查看我们的 安全策略,了解如何进行的指南。

在 Rails 及其子项目的代码库、问题跟踪器、聊天室和邮件列表中进行交互的每个人都应遵循 Rails 行为准则

许可证

Ruby on Rails 在 MIT 许可证 下发布。