2013-12-17 119 views
0

我想在表格中只显示一行。我为同看起来像这样的控制器:在表格中只显示一条记录

def Add 
    @item= Item.find(params[:id]) 
end 

和我的表行看起来是这样的。是不是有方法.each只显示一条记录的替代品?

<% @item.each do |item| %> 
<tr> 
    <td><%= item.name %></td> 
    <td><%= item.price %></td> 
    <td><%= item.quantity %></td> 
    <td><%= item.quantity * item.price %></td> 
    <td> 
     <% link_to("update", '#', :class => 'action update') %> 
     <% link_to("X", '#', :class => 'action delete') %> 
    </td> 
</tr> 
<% end %> 
+0

提高您的接受率 – Jeet

回答

2

在这种情况下,你不需要循环。 U可以直接创建表这样

<tr> 
    <td><%= @item.name %></td> 
    <td><%= @item.price %></td> 
    <td><%= @item.quantity %></td> 
    <td><%= @item.quantity * @item.price %></td> 
    <td> 
    <% link_to("update", '#', :class => 'action update') %> 
    <% link_to("X", '#', :class => 'action delete') %> 
    </td> 
</tr> 
1
@item= Item.find(params[:id]) 

这里,@item将类项的对象。所以你不需要用'each'来迭代对象。您可以通过@item对象直接访问Item属性。

@item.name 
@item.price 
@item.quantity.....