這是如何將一個字符串轉換爲軌道/ Ruby的一類:如何將字符串轉換爲類方法?
p = "Post"
Kernel.const_get(p)
eval(p)
p.constantize
但是,如果我從一個數組中檢索什麼方法/活動記錄的對象,如:
Post.description
但可能是
Post.anything
其中任何東西都是像anything = "description"
這樣的字符串。
這很有幫助,因爲我想重構一個非常大的類,並減少代碼和重複行數。我怎樣才能使它工作?
你意識到你只需要{const_get,EVAL,constantize}之一吧? – klochner 2010-05-26 17:03:11
是的。我當然是了。因爲我剛剛測試了3. – kgpdeveloper 2010-05-26 23:12:48