Цикл рельсов с бесконечными значениями для установки цвета фона

У меня следующий цикл

У меня есть все данные в @clients

[1,2,3,4,5].each { |rows| if rows % 2 == 0 sheet1.row(rows).default_format = bg_color1 else sheet1.row(rows).default_format = bg_color2 end
}

Но у меня более 100 строк. Как я могу подсчитать @clients и использовать его в каждом цикле, как указано выше

2 ответа

Это должно работать

@clients.each_with_index { |rows,i| if i % 2 == 0 sheet1.row(i).default_format = bg_color1 else sheet1.row(i).default_format = bg_color2 end
}


@clients.each_with_index do |client, index| if index % 2 == 0 sheet1.row(index+1).default_format = bg_color1 else sheet1.row(index+1).default_format = bg_color2 end
end

each_with_index выполняет each_with_index через массив и предоставляет переменную для отслеживания текущей позиции внутри этого массива.

licensed under cc by-sa 3.0 with attribution.