2011-05-23 32 views
8

Tengo un módulo y una clase infantil. Donde tengo toda la funcionalidad dentro del módulo. y dentro de la clase de niños solo llamo a los métodos del módulo. Quiero que este módulo se vincule con una tarea de rake bajo un espacio de nombres, y estos dos archivos están en el mismo directorio. RAILS_ROOT/lib. ¿Cómo hago esto? Estoy ejecutando Rails 3.0.3.¿Cómo incluir un módulo en un espacio de nombres de rake en archivos separados?

Respuesta

3

crear un archivo bajo lib/tareas/your_namespace.rake, y escribe la tarea:

namespace :your_namespace do 
    desc "An optional description of your task" 
    task :your_task_name => [:environment] do 
    # your code stuff 
    end 
end 

usted debería ser capaz de utilizar el código de los módulos. En el caso, sólo tiene que añadir esta línea en la tarea rake:

require 'yourfile' 
+0

Gracias. Tuve que solicitar el archivo en la parte superior del archivo de la tarea, como dijiste. –

3

Es necesario que ambos requieren y luego incluyen:

require 'your_module' 
namespace :your_task do 
    include YourModule 
    ... 
Cuestiones relacionadas