diff options
author | Jamie Gaskins <jgaskins@gmail.com> | 2013-05-22 17:46:54 +0800 |
---|---|---|
committer | Jamie Gaskins <jgaskins@gmail.com> | 2013-05-22 17:46:54 +0800 |
commit | ab727743bf8a7e27ab1e1cc6097a07e5792aa7da (patch) | |
tree | b76e08e3fd65f076117d9cb12e50e4213e7dda19 | |
parent | d6d63767795dd5c47a57d37d075e52c2043a87bd (diff) | |
download | rails-ab727743bf8a7e27ab1e1cc6097a07e5792aa7da.tar.gz rails-ab727743bf8a7e27ab1e1cc6097a07e5792aa7da.tar.bz2 rails-ab727743bf8a7e27ab1e1cc6097a07e5792aa7da.zip |
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.
-rw-r--r-- | railties/lib/rails/generators/rails/app/templates/config/application.rb | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/railties/lib/rails/generators/rails/app/templates/config/application.rb b/railties/lib/rails/generators/rails/app/templates/config/application.rb index ceb2bdf371..4d474d5267 100644 --- a/railties/lib/rails/generators/rails/app/templates/config/application.rb +++ b/railties/lib/rails/generators/rails/app/templates/config/application.rb @@ -4,6 +4,7 @@ require File.expand_path('../boot', __FILE__) 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" |