app/views/spree/admin/parts/_parts_table.html.erb
<table class="table">
<thead>
<tr>
<th><%= Spree.t(:sku) %></th>
<th><%= Spree.t(:name) %></th>
<th><%= Spree.t(:options) %></th>
<th><%= Spree.t(:variant) %></th>
<th><%= Spree.t(:qty) %></th>
</tr>
</thead>
<tbody>
<% parts.each do |part| %>
<tr id="<%= dom_id(part, :sel)%>">
<td><%= part.sku %></td>
<td><%= part.name %></td>
<td><%= part.options_text %></td>
<td><%= variant_including_master_options part.assembly %></td>
<td><%= text_field_tag :count, part.count, class: "form-control" %></td>
<td class="actions">
<%= image_tag "spinner.gif", :style => "display:none", :class => "spinner" %>
<%= link_to_with_icon("edit", Spree.t("edit"),
set_count_admin_product_part_url(product, part),
:class => "set_count_admin_product_part_link btn btn-primary btn-sm", :no_text => true) %>
<%= link_to_with_icon("delete", Spree.t("delete"),
remove_admin_product_part_url(product, part),
:class => "remove_admin_product_part_link btn btn-danger btn-sm delete-resource", :no_text => true) %>
</td>
</tr>
<% end %>
<% if parts.empty? %>
<tr><td colspan="5"><%= Spree.t(:none) %>.</td></tr>
<% end %>
</tbody>
</table>