我有两节课
class ClassOne
def do_something
[...]
end
end
class ClassTwo
def do_something
[...]
end
end
我从数据库中得到一个类名(classone或classtwo),我想在该类中调用
do_something
。所以我有
class_name = "ClassOne"
如果类名等于“class2”,我想调用
ClassOne.do_something
或ClassTwo.do_something
。我不能使用一个简单的if条件,我有很多类,在调用之前我正在检查类是否存在。
有办法吗?
最佳答案
香草红宝石:
Kernel.const_get('ClassOne').do_something
铁路:
'ClassOne'.constantize.do_something
关于ruby - 在Ruby中按名称获取类(class),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9620392/