Вот метод Rails 'constantize
:
def constantize(camel_cased_word)
names = camel_cased_word.split('::')
names.shift if names.empty? || names.first.empty?
constant = Object
names.each do |name|
constant = constant.const_defined?(name) ? constant.const_get(name) : constant.const_missing(name)
end
constant
end
Видите, он начинается с Object
поверх всего этого, а затем использует каждое имя между двойными точками с запятой в качестве ступеньки кдоберитесь до нужной вам константы.