2011-12-04 51 views
8

我怎樣才能讓我的符號動態的一個遞增的數字是這樣的:在每塊紅寶石動態符號

@order.products.each do |product,num| 
    = f.input :aanbod+num.to_s 
+2

在這種情況下,只要使用一個'字符串'! –

回答

16

這種形式等同於"aanbod#{num}".to_sym,更簡潔:

= f.input :"aanbod#{num}" 
+0

對於稍微不同的用法:'varname.to_sym'在我看來比':「#{varname}」'更具可讀性。很高興知道這兩者,並使用更適合手頭的情況 –

+0

@StanKurdziel這裏的問題是,在這種情況下變量名是動態的,所以一個簡單的'varname.to_sym'不是一個選項。 –

4
= f.input ("aanbod" + num.to_s).to_sym 

= f.input "aanbod#{num}".to_sym 
+7

或:':「aanbod#{num}」' – tokland