2016-04-20 37 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 –