2012-05-31 17 views
1

我無法弄清楚如何將這個詞用於谷歌搜索 - 特赦。如果我有這樣一個模型:通過包含字段名稱的字符串變量來引用模型字段?

c = Color.all 

我可以說:

c.Color[0].color_name 

所以,如果我再有一個包含在模型就像一個字段的名稱的變量:

b = 'color_name' 

我怎麼能這樣說(「c.color_name」)這樣使用字段名稱的字符串:

c[0].b 

或者說,我的意思是說的Ruby/Rails使用vaiable的內容作爲字段名稱:

c[0].[the string value of b] 

我摸索周圍試圖一切我能想到的,但這樣做的語法我不能弄清楚。

謝謝!

的Rails 2.3.5/1.8.7的Ruby

+0

了,'C [0] [ '字符串']'工作使用send方法? – alex

回答

4

b如果是Color的一個實例變量或方法,從Object

c = Color.all 
b = 'color_name' 
c[0].send(b.to_sym) 
+0

真棒謝謝你! – Reno

0

我從來沒有使用過這個版本的軌道,但object['nameoffield']object.read_attribute('nameoffield')可能會奏效。

相關問題