rails/rails
GitHub: rails/rails
一个遵循 MVC 模式的 Ruby 全栈 Web 应用框架,提供从数据库模型到视图渲染、路由控制的全套组件,帮助开发者高效构建 Web 应用。
Stars: 58655 | Forks: 22260
# 欢迎使用 Rails
## 什么是 Rails?
Rails 是一个 Web 应用框架,它包含了创建基于数据库的 Web 应用程序所需的一切,并遵循
[Model-View-Controller (MVC)](https://en.wikipedia.org/wiki/Model-view-controller)
模式。
理解 MVC 模式是理解 Rails 的关键。MVC 将你的应用程序分为三层:Model、View 和 Controller,每一层都有其特定的职责。
## Model 层
_**Model 层**_ 表示领域模型(例如 Account、Product、Person、Post 等),并封装了特定于你应用程序的业务逻辑。在 Rails 中,基于数据库的模型类继承自
`ActiveRecord::Base`。[Active Record](activerecord/README.rdoc) 允许你将数据库行中的数据呈现为对象,并使用业务逻辑方法来丰富这些数据对象。
虽然大多数 Rails 模型都有数据库支持,但模型也可以是普通的
Ruby 类,或者是实现了由 [Active Model](activemodel/README.rdoc) 模块提供的一组接口的 Ruby 类。
## View 层
_**View 层**_ 由“模板”组成,负责为你应用程序的资源提供适当的表示形式。模板可以
有多种格式,但大多数视图模板都是嵌入了 Ruby 代码的 HTML(ERB 文件)。视图通常会被渲染以生成控制器的响应
或生成电子邮件的正文。在 Rails 中,视图的生成由 [Action View](actionview/README.rdoc) 处理。
## Controller 层
_**Controller 层**_ 负责处理传入的 HTTP 请求并提供合适的响应。通常,这意味着返回 HTML,但 Rails 控制器
也可以生成 XML、JSON、PDF、针对移动设备的视图等。控制器会加载和
操作模型,并渲染视图模板,以便生成相应的 HTTP 响应。
在 Rails 中,传入的请求由 Action Dispatch 路由到相应的控制器,并且
控制器类继承自 `ActionController::Base`。Action Dispatch 和 Action Controller
被打包在 [Action Pack](actionpack/README.rdoc) 中。
## 框架和库
[Active Record](activerecord/README.rdoc)、[Active Model](activemodel/README.rdoc)、[Action Pack](actionpack/README.rdoc) 和 [Action View](actionview/README.rdoc) 都可以在 Rails 之外独立使用。
除此之外,Rails 还附带了:
- [Action Mailer](actionmailer/README.rdoc),一个用于生成和发送电子邮件的库
- [Action Mailbox](actionmailbox/README.md),一个用于在 Rails 应用程序中接收电子邮件的库
- [Active Job](activejob/README.md),一个用于声明任务并让它们在各种队列后端上运行的框架
- [Action Cable](actioncable/README.md),一个将 WebSockets 与 Rails 应用程序集成的框架
- [Active Storage](activestorage/README.md),一个用于将云端和本地文件附加到 Rails 应用程序的库
- [Action Text](actiontext/README.md),一个用于处理富文本内容的库
- [Active Support](activesupport/README.rdoc),一组对 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. 按照指南开始开发你的应用程序。你可能会发现
以下资源非常有用:
* [Rails 入门指南](https://guides.rubyonrails.org/getting_started.html)
* [Ruby on Rails 指南](https://guides.rubyonrails.org)
* [API 文档](https://api.rubyonrails.org)
## 许可证
Ruby on Rails 是基于 [MIT 许可证](https://opensource.org/licenses/MIT) 发布的。
标签:Active Record, MVC架构, Ruby, Web开发框架, 全栈框架, 知识库