Skip to content

Latest commit

 

History

History
56 lines (33 loc) · 1.03 KB

README.md

File metadata and controls

56 lines (33 loc) · 1.03 KB

railties 核心:初始化、组件化

结构

1) Railtie

对 Rails 本身的改造。

2) Engine

对 Rails 外围的扩展。

3) Application

初始化时:Bootstrap 在前,Finisher 在后。

与我们应用接头。

实例方法,给 Rails.application 使用。

内容

1) config 配置

指的是 Railtie, Engine, Application 的 Configuration.

2) initializer 初始化

"初始化"这里是名词,主要是对它的使用,如 Application 的 Bootstrap 和 Finisher,以及我们项目 AppName 所涉及到的初始化。

3) 启动!

没有额外的"启动"程序,把配置、初始化做好了以后,启动就是自然而然的事了。

4)功能扩展

通过 Railtie、Engine 实现,特别是 Engine 可以大大方便我们组织代码。

继承关系

Rails.application.class.ancestors
  => [AppName::Application,
  Rails::Application,
  Rails::Engine,
  Rails::Railtie,
  Rails::Initializable,
  ... ...
  Object,
  ... ...
  Kernel,
  BasicObject]