我以这种方式渲染数组:
<%@products.to_a.each do |foo|%>
<th><%= foo %></th>
<%end%>
然后给我回复:
<th>{"ID"=>"50538713", "Product"=>"choco", "Stock"=>0}</th>
<th>{"ID"=>"10000750", "Product"=>"pepsi", "Stock"=>0}</th>
<th>{"ID"=>"100538713", "Product"=>"milk", "Stock"=>0}</th>
但我只需要第一条记录,只有标题为&#34; ID&#34;,&#34;产品&#34;,&#34;股票&#34;
我怎么才能显示标题?
答案 0 :(得分:1)
您已经说@products
是一个哈希数组,但它可能是一个空数组。如果它为空,我们需要用空哈希替换#first
的结果。
然后你可以获取第一个元素并获取密钥,然后遍历生成的数组:
<% (@products.first || {}).keys.each do |key| %>
<th><%= key %></th>
<% end %>