Ruby中實(shí)現(xiàn)把字符串轉(zhuǎn)換為類的2種方法
更新時(shí)間:2014年10月11日 13:08:17 投稿:junjie
這篇文章主要介紹了Ruby中實(shí)現(xiàn)把字符串轉(zhuǎn)換為類的2種方法,其中一種是rails提供的方法,需要的朋友可以參考下
最近有個(gè)需求,需要根據(jù)一個(gè)字符串當(dāng)作一個(gè)類來使用,例如:
有一個(gè)字符串 “ChinaMag”,根據(jù)這個(gè)字符串調(diào)用 類 ChinaMag下的方法。
解決辦法:
1.rails可以使用 constantize方法。
復(fù)制代碼 代碼如下:
pry(main)> 'ChinaMag'.constantize
=> ChinaMag
pry(main)> "Test::Unit".constantize
=> Test::Unit
2.ruby可以使用 Object.const_get(“String”)。
復(fù)制代碼 代碼如下:
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
相關(guān)文章
Windows下Ruby+Watir自動(dòng)化測試的環(huán)境搭建及數(shù)據(jù)讀取
這篇文章主要介紹了Windows下Ruby+Watir自動(dòng)化測試的環(huán)境搭建及數(shù)據(jù)讀取,Watir是一個(gè)使用Ruby實(shí)現(xiàn)的開源Web自動(dòng)化測試框架,需要的朋友可以參考下2016-03-03
實(shí)例解析Ruby程序中調(diào)用REXML來解析XML格式數(shù)據(jù)的用法
這篇文章主要介紹了Ruby程序中調(diào)用REXML來解析XML格式數(shù)據(jù)的用法,文中用實(shí)例分三個(gè)步驟講解了REXML解析XML的過程,需要的朋友可以參考下2016-04-04
ruby on rails中Model的關(guān)聯(lián)詳解
本文給大家詳細(xì)講解了ruby on rails中model關(guān)聯(lián)的幾種形式,包括一對多,一對一,多對多。并給出了詳細(xì)的示例,有需要的小伙伴可以參考下2017-07-07

