1

「AgileWebDevwith Rails」の本の例を見ていきますが、hamlのような便利な追加のテクニックと組み合わせて使用​​します。トリッキーな問題が1つあります。これは、このerbの部分を書き留める方法です。

<% if line_item == @current_item %>
<tr id="current_item">
<% else %>
<tr>
<% end %>
  <td><%= line_item.quantity %>&times;</td>
  <td><%= line_item.product.title %></td>
  <td class="item_price"><%= number_to_currency(line_item.total_price) %></td>
</tr>

hamlで?

このようにsthを試しました:

-if line_item==@current_item
 %tr#current_item
-else
 %tr
%td!=line_item.quantity.to_s+"&times;"
%td=line_item.product.title
%td.item_price=number_to_currency(line_item.total_price)

しかし、TDなしで空のTRを出力します...

4

1 に答える 1

4

2つの別々のエントリを持つのではなく%tr(この場合、各trの下に3つのtdをリストする必要があると思います)、条件付きでIDを設定するだけで済みます。

%tr{:id => (line_item == @current_item) ? "current_item" : false}
  %td!=line_item.quantity.to_s+"&times;"
  %td=line_item.product.title
  %td.item_price=number_to_currency(line_item.total_price)
于 2012-05-06T19:46:36.670 に答える