Ruby中實現把字符串轉換為類的2種方法
更新時間:2014年10月11日 13:08:17 投稿:junjie
這篇文章主要介紹了Ruby中實現把字符串轉換為類的2種方法,其中一種是rails提供的方法,需要的朋友可以參考下
最近有個需求,需要根據一個字符串當作一個類來使用,例如:
有一個字符串 “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元編程之夢中情人method_missing方法詳解
這篇文章主要介紹了Ruby元編程之夢中情人method_missing方法詳解,本文講解了我該怎么用 method_missing 、方法代理、define_method、什么時候用 method_missing、元方法等內容,需要的朋友可以參考下2015-05-05
mac及l(fā)inux下搭建ruby+rails環(huán)境
本文給大家分享了如何在mac以及Linux系統中安裝ruby+rails環(huán)境,非常詳細,而且有圖有真相,希望大家能夠喜歡2017-11-11

