【发布时间】:2011-04-19 23:01:39
【问题描述】:
我正在尝试用 haml 编写这个 html,以便在项目是当前项目时添加一个 id 标记。这是为 jquery 高亮设置的。
<% 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>
因为不想写辅助方法,所以把if语句卡在了标签里面:
%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
但是,'current_item' 的这个 id 标记会与所有项目保持一致,而不仅仅是当前项目。这会导致 javascript 突出显示所有或错误的条目。关于如何让haml合作的想法?
【问题讨论】:
标签: ruby-on-rails if-statement haml