ruby-on-rails – 如何根据日期对内容进行分组(Rails)
发布时间:2020-12-17 01:55:20 所属栏目:百科 来源:网络整理
导读:我正在尝试将属于同一日期的内容组合在一起进行显示,这样日期只会按时间顺序发布一次. 就像是: 2009年10月14日 第3项 第3项内容 第2项 第2项内容 2009年10月13日 第1项 第3项内容 如何在视图中显示? (假设从控制器传递@items,其中包含所有项目) 我已经尝试
我正在尝试将属于同一日期的内容组合在一起进行显示,这样日期只会按时间顺序发布一次.
就像是: 2009年10月14日 第2项 2009年10月13日 如何在视图中显示? (假设从控制器传递@items,其中包含所有项目) 我已经尝试过group_by,但我无法让它工作,因为它似乎是按照当天的价值而不是与月份一起安排自己. 有问题的代码:http://github.com/davidchua/Political-Watch/blob/master/app/views/items/index.html.erb 要在实时部署中查看问题,请在http://political-watch.org 解决方法
1)将app / controllers / items_controller.rb的第5行替换为:
@items = Item.all(:order => "date DESC") 2)将app / views / items / index.html.erb的第3-14行替换为: <% date = 1.day.from_now(@items.first.date.to_date) rescue nil # increment the day @items.each do |item| if date > item.date.to_date date = item.date.to_date %> <div style="background: #81BEF7;margin-top: 5px; margin-bottom: 5px;" class="rounded"><b><span style="padding: 5px"><%=h date %></span></b></div> <%end%> <p> <i><%=h item.time %> - </i> <%= link_to "#{item.title}",item.link %><br> <a href="/items/<%=item.id%>"><span class="subtext" style="margin-left: 55px">by <%= item.user.username %> | <%=item.comments.count%> comments </span></a> </p> <% end # end for items_each%> 在这种方法中,您使用数据库进行排序,并进行简单的分组比较. PS:我认为将数据库列命名为“date”并不是一个好主意.在某些数据库中,’date’是保留关键字. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |