Próbuję zapisać ten html w Haml, aby dodać tag id, jeśli element jest aktualny. To jest do ustawienia podświetlania jquery.Warunkowo ustawiony identyfikator elementu HTML z HAML
<% if line_item == @current_item %>
<tr class="line_item id="current_item">
<% else %>
<tr class="line_item">
<% end %>
<td><%= line_item.quantity %>×</td>
<td><%= line_item.product.title %></td>
<td class="item_price"><%= number_to_currency(line_item.total_price) %></td>
</tr>
Bo nie chce napisać metodę pomocnika, mam zatrzymany if wewnątrz tagu:
%tr.line_item{ :id => (line_item == @current_item ? '' : 'current_item') }
%td
= line_item.quantity
%td
\x #{line_item.product.title}
%td.item_price
= number_to_currency(line_item.total_price)
%td.item_remove
= button_to 'Remove', line_item, :method => :delete
Jednak to id tag „current_item” wciska ze wszystkimi przedmioty, a nie tylko bieżący. Powoduje to, że javascript podświetla wszystko lub błędny wpis. Myśli o tym, jak zmusić Hamla do współpracy?
Dzięki! Chciałbym, żeby to było czystsze. – ScotterC
To właśnie "" sprawiło, że poczułem się źle! :-) –
Możliwość użycia zera do "zignorowania" atrybutu w HAML to świetna wskazówka - dziękuję za wskazanie tego! – jpwynn