2012-10-17 12 views
16

Ho un modulo in un file chiamato my_mod.rb dichiarato in questo modo:Come posso eseguire un metodo in un modulo dalla console di Rails?

module Reports 
    module MyMod 

    def mymethod 
     ... 
    end 

    end 
end 

voglio solo correre mymethod. Non è un metodo di classe, ovviamente, quindi non posso eseguirlo come:

Reports::MyMod.mymethod 

ma speravo ci fosse un modo per ottenere il metodo di valutazione da parte del parser, senza dover passare attraverso un mazzo di module_eval e module_function stuff. Dovrebbe essere più facile di così, non dovrebbe?

risposta

24

Per eseguirlo dalla console rotaie basta includerlo:

> include Reports::MyMod 
> mymethod 
+3

vincitore! La tua soluzione è migliore della mia; Ho imparato qualcosa di nuovo. – gregates

1
class A 
    include Reports::MyMod 
end 

A.new.mymethod 
Problemi correlati