2011-10-31 46 views
0

塊有以下拋出一個錯誤:軌道重構,有條件

<% @foo.each do |foo| unless @foo.nil? %> 

<% end %> 

什麼辦法讓這兩個條件和塊在同一行?

回答

1

只要堅持一個to_a在那裏:

<% @foo.to_a.each do |foo| %> 

<% end %> 

調用to_anil給你一個空數組,數組上調用to_a給你一個數組。

1

IMO清潔使@foo成爲一個空列表,這是Rails發現者通常會發生的事情。

或者在一個局部中包含循環,並且在mainline模板中只需要有條件。