我有这样的事情:
string = "Post"
我想将字符串转换为类名文字。我使用这样的eval来转换字符串:
eval(string) #=> Post
作为一名javaScript开发人员,我试图避免使用eval。在Ruby中有更好的方法吗?或者使用eval是处理此问题的首选方式?
答案 0 :(得分:28)
你可以尝试
class Post
end
Object.const_get("Post")
返回Post
类
答案 1 :(得分:21)
string = "Fixnum"
clazz = Object.const_get(string)
clazz.name # => "Fixnum"
如果你在rails上下文中,你也可以在字符串
上使用`#constantize方法clazz = string.constantize # => Fixnum