我在rails中了解到您可以使用控制器查询数据,这就是我一直在做的事情。
但是说我有一个日期列表,我想在每个月下直观地显示它们:
August:
14/08/2015
25/08/2015
September:
12/09/2015
19/09/2015
October:
3/10/2015
8/10/2015
November:
25/11/2015
5/11/2015
现在我可以通过控制器查询每个月,但在我看来这是非常低效的。结果你可以在视图中做这样的事情吗?
答案 0 :(得分:0)
您可以使用Ruby的集合group_by method对结果进行分组:
@items_by_month = @items.group_by{|x| x.created_at.month}
它将产生具有以下结构的哈希:
{
# January
1 => [item1, item2, ...],
# February
2 => [item3, item4, ...],
# ... and so on
}
然后你可以在你的视图中迭代那个哈希。