1_railtie.rdoc
Railtie is the core of the Rails Framework and provides several hooks to extend
Rails and/or modify the initialization process.
Every major component of Rails (Action Mailer, Action Controller,
Action View, Active Record and Active Resource) are all Railties, so each of
them is responsible to set their own initialization. This makes, for example,
Rails absent of any ActiveRecord hook, allowing any other ORM to hook in.
Developing a Rails extension does not _require_ any implementation of
Railtie, but if you need to interact with the Rails framework
This file has been truncated. show original
2_engine.rdoc
Rails::Engine allows you to wrap a specific Rails application and share it accross
different applications. Since Rails 3.0, your Rails::Application is nothing
more than an Engine, thus your engines will behave much more closer to an application
since then.
Any Rails::Engine is also a Rails::Railtie, so the same methods (like rake_tasks and
generators) and configuration available in the latter can also be used in the former.
== Creating an Engine
This file has been truncated. show original
3_plugin.rdoc
Rails::Plugin is nothing more than a Rails::Engine, but since it's loaded too late
in the boot process, it does not have the same configuration powers as a bare
Rails::Engine.
Opposite to Rails::Railtie and Rails::Engine, you are not supposed to inherit from
Rails::Plugin. Rails::Plugin is automatically configured to be an engine by simply
placing inside vendor/plugins. Since this is done automatically, you actually cannot
declare a Rails::Engine inside your Plugin, otherwise it would cause the same files
to be loaded twice. This means that if you want to ship an Engine as gem it cannot
be used as plugin and vice-versa.
This file has been truncated. show original
There are more than three files. show original