2010-09-28 31 views
2

我希望cycle方法能夠獲得一組我可以隨時編譯的值,但它似乎並不像我所希望的那樣解釋它。我如何傳遞Rails的cycle()一個值數組來循環遍歷?

(在這個例子中它是一個靜態數組,但是我希望它的工作,這樣我可以使用被可變地構造陣列)

- some_array = ['one', 'two', 'three'] 
- colors.each do |color| 
    %a{ :name => color, :class => "#{cycle(some_array)}" } 

這適用此作爲一類給每個元素:

"three"] "two", ["one", 

...看起來好像它正在調用數組上的東西to_s

我應該如何做到這一點?

回答

5

cycle需要多個參數並循環它們。你正在傳遞一個單個的參數,一個數組。

可以使用圖示操作到陣列變成這些多參數:

cycle(*some_array) 

,如果你這樣做將採取行動:

cycle("one", "two", "three") 

不是:

cycle(["one", "two", "three"]) 
+0

輝煌。非常感謝花時間。 – doctororange 2010-09-28 05:21:42

+0

@doctororange:不用擔心,樂於幫忙。 – 2010-09-28 06:01:38

相關問題