Carril de recarga automática de rieles en modo de desarrollo

Estoy tratando de tener un complemento. Estoy desarrollando la recarga automática cada vez que cambio mi código, emulando la misma recarga automática que ocurre normalmente en el modo de desarrollo de Rail. Mi plugin es principalmente un módulo de mezcla ActiveRecord. He intentado todas las sugerencias que he podido encontrar en búsquedas relacionadas con Google. Nada ha funcionado aún.

En init.rb de mi plugin:

require 'activesupport' unless defined? ActiveSupport
require 'activerecord' unless defined? ActiveRecord

if RAILS_ENV == 'development'
    ActiveSupport::Dependencies.load_once_paths.delete lib_path
    ActiveSupport::Dependencies.load_once_paths.delete File.join(lib_path, 'crowd_compass', 'publisher.rb')

    ActiveSupport::Dependencies.load_paths << lib_path
    ActiveSupport::Dependencies.load_paths << File.join(lib_path, 'crowd_compass', 'publisher.rb')
end

ActiveRecord::Base.send(:include, CrowdCompass::Publisher)

Al mirar en el registro de cambios de los rieles, noté la función de recargar automáticamente todos los complementos.

config.reload_plugins = true if RAILS_ENV == 'development'

Esto no funcionó como lo esperaba cuando lo agregué a mi conf / environment.rb

Mi complemento está estructurado, por lo que todos los archivos se cargan automáticamente mediante namespace => directory. Hice esto para evitar el uso de "require", ya que pensé que require estaba impidiendo que mi complemento se recargue automáticamente.

He estado haciendo todo mi trabajo en modo de desarrollo a través de la consola de Rails y no sé si esto se comporta de manera diferente a correr a través de mongrel (o como un servidor web).

El complemento funciona como se esperaba, pero tengo que volver a cargar cada vez que realice algún cambio en el código. ¿Alguien sabe una manera de hacer que los complementos se vuelvan a cargar?

Respuestas a la pregunta(1)

Su respuesta a la pregunta