我希望能够加载整个应用程序,以便我可以找到给定类的后代。
例如,给定我定义了以下类:
# app/models/foo_class.rb
class FooClass < MySpecialBaseClass
# pasta code
end
它不会被发现:
irb> ObjectSpace.each_object.select { |obj| obj.is_a?(Class) && obj <= MySpecialBaseClass }
=> []
直到我调用 const:
irb> FooClass
然后返回:
irb> ObjectSpace.each_object.select { |obj| obj.is_a?(Class) && obj <= MySpecialBaseClass }
=> [FooClass]
我该怎么做呢?