Collect more Rails initialization code in the Railtie

This commit is contained in:
Benjamin Fleischer 2015-11-29 23:33:35 -06:00
parent 316026e9ce
commit 0c2153ac5e
3 changed files with 24 additions and 20 deletions

View File

@ -2,7 +2,18 @@ require 'active_model'
require 'active_support' require 'active_support'
require 'action_controller' require 'action_controller'
require 'action_controller/railtie' require 'action_controller/railtie'
require 'active_model/serializer/version'
require 'active_model/serializer'
require 'active_model_serializers/railtie'
module ActiveModelSerializers module ActiveModelSerializers
extend ActiveSupport::Autoload
autoload :Model
autoload :Callbacks
autoload :Logging
require 'active_model/serializable_resource'
require 'action_controller/serialization'
mattr_accessor(:logger) { ActiveSupport::TaggedLogging.new(ActiveSupport::Logger.new(STDOUT)) } mattr_accessor(:logger) { ActiveSupport::TaggedLogging.new(ActiveSupport::Logger.new(STDOUT)) }
def self.config def self.config
@ -16,18 +27,3 @@ module ActiveModelSerializers
autoload :Logging autoload :Logging
autoload :Test autoload :Test
end end
require 'active_model/serializer'
require 'active_model/serializable_resource'
require 'active_model/serializer/version'
require 'action_controller/serialization'
ActiveSupport.on_load(:action_controller) do
ActiveSupport.run_load_hooks(:active_model_serializers, ActiveModelSerializers)
include ::ActionController::Serialization
ActionDispatch::Reloader.to_prepare do
ActiveModel::Serializer.serializers_cache.clear
end
end
require 'active_model/serializer/railtie'

View File

@ -1,7 +1,17 @@
require 'rails/railtie' require 'rails/railtie'
module ActiveModel module ActiveModelSerializers
class Railtie < Rails::Railtie class Railtie < Rails::Railtie
initializer 'active_model_serializers.action_controller' do
ActiveSupport.on_load(:action_controller) do
ActiveSupport.run_load_hooks(:active_model_serializers, ActiveModelSerializers)
include ::ActionController::Serialization
ActionDispatch::Reloader.to_prepare do
ActiveModel::Serializer.serializers_cache.clear
end
end
end
initializer 'active_model_serializers.logger' do initializer 'active_model_serializers.logger' do
ActiveSupport.on_load(:active_model_serializers) do ActiveSupport.on_load(:active_model_serializers) do
self.logger = ActionController::Base.logger self.logger = ActionController::Base.logger
@ -15,7 +25,7 @@ module ActiveModel
end end
end end
initializer 'generators' do |app| initializer 'active_model_serializers.generators' do |app|
app.load_generators app.load_generators
require 'generators/serializer/resource_override' require 'generators/serializer/resource_override'
end end

View File

@ -17,6 +17,7 @@ require 'action_controller'
require 'action_controller/test_case' require 'action_controller/test_case'
require 'action_controller/railtie' require 'action_controller/railtie'
require 'active_support/json' require 'active_support/json'
require 'active_model_serializers'
require 'fileutils' require 'fileutils'
FileUtils.mkdir_p(File.expand_path('../../tmp/cache', __FILE__)) FileUtils.mkdir_p(File.expand_path('../../tmp/cache', __FILE__))
@ -42,9 +43,6 @@ end
require 'minitest/reporters' require 'minitest/reporters'
Minitest::Reporters.use! Minitest::Reporters.use!
require 'active_model_serializers'
require 'active_model/serializer/railtie'
require 'support/stream_capture' require 'support/stream_capture'
require 'support/rails_app' require 'support/rails_app'