2012-10-17 6 views
16

Böyle ilan my_mod.rb adlı bir dosyada bir modül var. Açıkça bir sınıf yöntemi değil, bu yüzden gibi koşamam:Rails konsolundan bir modülde nasıl bir yöntem yürütebilirim? Sadece <code>mymethod</code> çalıştırmak istediğiniz</p> <pre><code>module Reports module MyMod def mymethod ... end end end </code></pre> <p>:

Reports::MyMod.mymethod 

ve henüz ben module_eval bir demet geçmek zorunda kalmadan ayrıştırıcı tarafından değerlendirilir yöntemi almak için bir yolu olsa umuyordum ve module_function şeyler. Bundan daha kolay olmalı, değil mi?

cevap

24

sadece bunu eklemek zorunda raylar konsoldan çalıştırmak için:

> include Reports::MyMod 
> mymethod 
+3

Kazanan! Çözümünüz benimkinden daha iyi; Yeni bir şey öğrendim. – gregates

1
class A 
    include Reports::MyMod 
end 

A.new.mymethod 
İlgili konular