我有一个用一堆类方法定义的实用程序类。在 Rails 控制台中,当我使用 Object.const_defined?
搜索类时,它返回 false。但是在调用类方法之一或创建类的实例后,Object.const_defined?
返回 true。这是因为某种延迟加载实例化吗?有没有另一种方法可以检查是否存在一个将返回 true 的类,即使我还没有实例化任何东西?
最佳答案
这是一种黑客行为,但它有效
Object.const_get(:ClassName).is_a?(Class) rescue false
如果定义了类,则上述语句将返回 true,否则返回 false
关于ruby-on-rails - Rails 如何在尚未实例化的情况下检查类是否存在?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21613696/