Rails помощник цикла с несколькими исключениями - PullRequest
1 голос
/ 03 марта 2011

Я использую вспомогательный метод Rails cycle() стандартным способом со строками таблицы, чтобы чередовать строки с разными цветами фона. Тем не менее, я хочу, чтобы случайная строка или два (которые соответствуют определенным критериям) были другого, третьего цвета, без прерывания цикла.

Другими словами, я хочу строки вроде:

white
black
red
black
white
black
white

Вместо:

white
black
red
white
black
white

Какой лучший способ сделать это?

1 Ответ

4 голосов
/ 04 марта 2011

Нужно сохранить его во временной переменной и выполнить цикл (), чтобы убедиться, что он актуален.

<%
class = cycle('white', 'black', :name => 'colors')
class = 'red' if should_be_highlighted
%>
<tr class="<%= class %>">

Вы можете красиво обернуть это в своем собственном помощнике.

...