Add ActiveModel requirement to application.rb

Currently, ActiveModel is only loaded by ActiveRecord. If you skip ActiveRecord, ActiveModel will not be required (or even autoloaded) and including `ActiveModel::Model` into a plain Ruby class will raise `NameError`.

To reproduce this:

- create a new app with `rails new my_app -O`
- create a Ruby class that includes `ActiveModel::Model` in `app/models`
- load up a Rails console and try to do anything with the class :-)

Since ActionPack relies so heavily on the ActiveModel API, this should probably be considered a dependency of the app. Another possibility would be to make it a dependency of ActionController.
This commit is contained in:
Jamie Gaskins 2013-05-22 17:46:54 +08:00
parent d6d6376779
commit ab727743bf

@ -4,6 +4,7 @@
require 'rails/all'
<% else -%>
# Pick the frameworks you want:
require "active_model/railtie"
<%= comment_if :skip_active_record %>require "active_record/railtie"
require "action_controller/railtie"
require "action_mailer/railtie"