跳到内容 跳到搜索

欢迎使用 Rails

Rails 是什么?

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

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

模型层

模型层 表示领域模型(如帐户、产品、人员、帖子等),并封装特定于应用程序的业务逻辑。在 Rails 中,数据库支持的模型类派生自 ActiveRecord::BaseActive 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 RecordActive ModelAction PackAction View 都可以在 Rails 之外独立使用。

除此之外,Rails 还附带

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

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

  • 活动作业,一种用于声明作业并使他们在各种队列后端上运行的框架

  • Action Cable,一个将 WebSockets 与 Rails 应用程序集成的框架

  • Active 存储,一个将云和本地文件附加到 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. 转到 http://localhost:3000,您将看到包含 Rails 和 Ruby 版本的 Rails 启动屏幕。

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

贡献

我们鼓励您为 Ruby on Rails 做出贡献!请查阅为 Ruby on Rails 贡献指南,了解如何进行操作的指南。 加入我们!

尝试报告 Rails 中可能的安全漏洞?请查阅我们的安全策略,了解如何进行操作的指南。

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

许可证

Ruby on Rails 根据MIT 许可证发布。