0
我们正在使用红宝石刻面作为新项目,我需要'constantize'方法的等价物。 我知道我可以要求ActiveSupport,但我想知道,是Factes提供的还是我需要ActiveSupport的东西。等价的红宝石刻面
我们正在使用红宝石刻面作为新项目,我需要'constantize'方法的等价物。 我知道我可以要求ActiveSupport,但我想知道,是Factes提供的还是我需要ActiveSupport的东西。等价的红宝石刻面
这不会回答“Facets提供的东西”是你问题的一部分,但它肯定回答了“或者我需要ActiveSupport”。这也说明了如何实际上是方法的实现,这是非常简单的
class String
def constantize
self.split("::").inject(Module) {|acc, val| acc.const_get(val)}
end
end
编辑:对于什么是值得的,刻面有一个constant
方法,请参阅http://rubyworks.github.com/rubyfaux/?doc=http://rubyworks.github.com/facets/docs/facets-2.9.3/core.json#api-module-Kernel/api-method-Kernel-h-constant