2016-04-20 38 views
0
<% @challenge.days_challenged.times do %> 
    <div class="text-background"> 
     Day <%= + 1 %> 
     <%= render "notes/notes" %> 
     <%= render "notes/form" %> 
    </div> 
    <% end %> 

凡是注有「1天」在頂部,而不是「1天」,「2天」,「3天」,等這取決於有多少@challenge.days_challenged如何增加+1倍的迭代次數?

回答

4

使用計數器,像這樣:

<% @challenge.days_challenged.times do |counter| %> 
    <div class="text-background"> 
    Day <%= counter + 1 %> 
    <%= render "notes/notes" %> 
    <%= render "notes/form" %> 
    </div> 
<% end %> 

這裏,.times會通過當前步驟迭代從0開始到你的塊。

2

假設days_challenged#times是天數組......每一天

days_challenged.times.each do |day| 
    puts "Day #{day}" 
    end 

輸出

+0

感謝您的幫助!也許有一天我會切換它,但現在它是一個fixnum –

+0

你激勵我解決一個新問題:]我試圖使用'days_challenged'現在做一個日期'date_challenged'數組,如果你可以提供了洞察力:http://stackoverflow.com/questions/36755716/how-to-make-integer-into-array-of-dates –