2011-02-03 10 views
5

Sé que suena un poco loco, pero estoy construyendo un motor que conectará varias aplicaciones, y dado que todas las aplicaciones usarán un complemento dado, me preguntaba si podría simplemente ponga el complemento en el motor.Rails 3: Incluyendo un complemento dentro de un motor

Así que lo puse en el proveedor/complementos, pero parece que no está cargado.

He estado jugando con autoload_paths y require, pero no he tenido éxito.

¿Alguien sabe si esto es posible? ¿O tienes una idea sobre lo que podría probar?

Gracias!

+1

Definir "motor" en términos de lo que está haciendo. – coreyward

+0

Acabo de crear un Rails Engine estándar y lo estoy agregando como una gema en cada aplicación. – Ivan

+0

¿Qué versión de rieles estás usando? en rails 2.3. * podría usar config.plugin_paths = ["# {Rails.root}/vendor/plugins", "# {YOUR_PLUGIN_PATH}/vendor/plugins"] en su entorno.rb – andrea

Respuesta

6

Después de algún tocar el violín, esto es lo que he encontrado obras y parece correcta:

module MyEngine 
    class Engine < Rails::Engine 
    config.after_initialize do 
     Rails.application.config.paths.vendor.plugins.push File.expand_path('../../vendor/plugins', __FILE__) 
    end 
    end 
end 
+0

¡Guau, gracias! Esto es exactamente lo que necesitaba. – ndbroadbent

+0

¡Impresionante, gracias! –

Cuestiones relacionadas