Jus*_*eph 3 module ruby-on-rails ruby-on-rails-3
我想动态地将某个文件夹中的所有模块包含到这个其他模块中.我的代码如下:
module Extensions
module ProductExtension
def add_included_extensions
extensions = Pathname.glob("lib/extensions/merchant/*.rb")
.map(&:basename)
.collect{|x|
x.to_s.gsub(".rb", "")
.titleize.gsub(" ","")
}
extensions.each do |merchant|
include "Extensions::MerchantExtensions::#{merchant}".constantize
end
end
def add_items
add_included_extensions
Merchant.all.each do |merchant|
send("add_#{merchant.name.downcase}_items")
end
end
end
end
Run Code Online (Sandbox Code Playgroud)
但是它似乎并没有实际包含文件,因为当我调用send方法时,它说它调用的方法不存在.知道我可能做错了吗?
| 归档时间: |
|
| 查看次数: |
3595 次 |
| 最近记录: |