2014-07-19 42 views

回答

3
> ActionMailer::Base.descendants 
=> [Devise::Mailer] 
> Dir['app/mailers/*.rb'].each {|f| require File.basename(f, '.rb')} 
> ActionMailer::Base.descendants 
=> [Devise::Mailer, InternalMailer, MailingListMailer, MessageMailer, UserMailer] 

可能有更好的方法。請注意,如果您的郵件程序位於其他位置(或嵌套的目錄中),則需要修改上面的Dir glob。

+0

謝謝。看起來如果你做'Dir ['app/mailers/**/*。rb']'你得到一個可愛的'LoadError:無法加載這樣的文件'錯誤。這足以測試它的目錄並讓你的答案遞歸! – BenMorganIO

相關問題