以下代码旨在确定要执行的自己的哪个子类。它遍历ObjectSpace中的所有内容以查找子类,然后从那里执行正确的子类。在rails中,这不起作用,因为库文件夹中的类不在ObjectSpace中。什么是通过特定文件夹搜索子类的方法?遍历Rails的lib文件夹来查找子项
def execute
ObjectSpace.each_object(Class).select do |klass|
if (klass < self.class)
klass.designations.each do |designation|
if (designation.downcase.capitalize == @action.downcase.capitalize)
command = klass.new(@sumo_params)
command.execute
end
end
end
end
end
或者 - 您有推荐的解决方案吗?
你可以只需要lib中的每个文件来加载它们吗?那么,你的课程将会记忆中,你可以去探索这种疯狂。 – 2013-03-07 21:06:54