Put unless .. end
inside <% .. %>
:
<ul>
<% @order.each do |item|
unless item['name'] == 'tip' %>
<li><h2><%= item["quantity"] %> × <%= item["name"] %></h2></li>
<% end
end %>
</ul>
Example (used item['name']
instead of item.name
for brevity):
require 'erb'
class Listing
def build
@order = [
{'quantity' => 1, 'name' => 'a'},
{'quantity' => 2, 'name' => 'tip'},
{'quantity' => 3, 'name' => 'c'},
]
template = ERB.new <<-TMPL
<ul>
<% @order.each do |item|
unless item['name'] == 'tip'%>
<li><h2><%= item["quantity"] %> × <%= item["name"] %></h2></li>
<% end
end %>
</ul>
TMPL
template.result binding
end
end
puts Listing.new.build
output:
<ul>
<li><h2>1 × a</h2></li>
<li><h2>3 × c</h2></li>
</ul>