我正在尝试像这样运行一个activerecord语句
@items=History.count(:group => "DATE(timelogin)")
在我的观点上,我试图在html表中显示我的记录,如此
<table class="table table-striped table-bordered table-condensed">
<% @item.each do |key,val| %>
<tr>
<td> <% key %></td>
<td> <% val %></td>
</tr>
<% end %>
</table>
我尝试了别的东西,而在搜索时,我想出了以下链接 What is the best way to convert an array to a hash in Ruby我替换了我的视图代码,因为它显示在链接中。
但它什么也没做。我后来添加了=
这样的
<%= @item.each do |key,val| %>
它显示整个结果一次并呈现为空表。
在网页和rails控制台中呈现的结果如下:
{"2014-01-08"=>1, "2013-12-31"=>2, "2013-12-30"=>2, "2013-12-26"=>5, "2013-12-24"=>1,
"2013-12-23"=>1, "2013-12-20"=>2, "2013-12-18"=>2, "2013-12-17"=>2, "2013-12-04"=>1,
"2013-12-03"=>5, "2013-12-02"=>1, "2013-11-28"=>7, "2013-11-20"=>1, "2013-11-19"=>1,
"2013-11-18"=>1, "2013-11-12"=>1, "2013-11-06"=>1, "2013-10-29"=>2, "2013-10-25"=>1,
"2013-10-23"=>1, "2013-10-15"=>1, "2013-10-14"=>3, "2013-10-10"=>2}
请让我知道我做错了什么。
答案 0 :(得分:4)
缺少=
。用它来输出。此外,您在视图中使用@item
,但在代码中将值分配给@items
。缺少s
。
<% @items.each do |key,val| %>
<tr>
<td> <%= key %></td>
<td> <%= val %></td>
</tr>
<% end %>
答案 1 :(得分:1)
试试这个
<table class="table table-striped table-bordered table-condensed">
<% @item.each do |key,val| %>
<tr>
<td> <%= key %></td>
<td> <%= val %></td>
</tr>
<% end %>
</table>