Ruby中实现把字符串转换为类的2种方法
2018-10-12 14:12
766 查看
最近有个需求,需要根据一个字符串当作一个类来使用,例如:
有一个字符串 “ChinaMag”,根据这个字符串调用 类 ChinaMag下的方法。
解决办法:
1.rails可以使用 constantize方法。
pry(main)> 'ChinaMag'.constantize
=> ChinaMag
pry(main)> "Test::Unit".constantize
=> Test::Unit
2.ruby可以使用 Object.const_get(“String”)。
pry(main)> Object::const_get('ChinaMag')
=> ChinaMag
pry(main)> module Foo
pry(main)* class Bar
pry(main)* end
pry(main)* end
=> nil
pry(main)> 'Foo::Bar'.split('::').inject(Object) {|o,c| o.const_get c}
=> Foo::Bar
您可能感兴趣的文章:
相关文章推荐
- Ruby中实现把字符串转换为类的2种方法
- Json字符串转换为java对象的各种实现方法【json_lib框架、Gson、org.json】
- C语言实现将字符串转换为数字的方法
- Python中实现字符串类型与字典类型相互转换的方法
- C#实现camel字符串转换(以及查阅后总结的一些其他C#中string类中的方法)
- js字符串转换成数字与数字转换成字符串的实现方法
- java中字符串处理、串联和转换的几个常用方法,以及如果需要自己编程实现的具体实施步骤。
- python实现字符串和日期相互转换的方法
- javascript实现的字符串与十六进制表示字符串相互转换方法
- PHP实现将科学计数法转换为原始数字字符串的方法
- javascript实现的字符串与十六进制表示字符串相互转换方法
- js字符串转换成数字与数字转换成字符串的实现方法
- C#实现字符串转换成字节数组的简单实现方法
- Json字符串转换为java对象的各种实现方法【json_lib框架、Gson、org.json】
- @V@ java代码笔记2010-06-12:java控制台输入各类型类实现;以及判断输入字符串里面是否有数字的两种方法:方法1:转换成字符数组;方法2:正则表达式。
- C#实现将千分位字符串转换成数字的方法
- 给出函数atoi(x)的实现方法,其功能是将字符串x转换为整数
- Json字符串转换为java对象的各种实现方法【json_lib框架、Gson、org.json】
- C#实现将字符串转换成日期格式的方法
- PHP数组和字符串互相转换实现方法