仅显示当前月份数据

时间:2014-06-04 02:16:26

标签: ruby ruby-on-rails-3 sorting group-by

我创建了一个功能强大的电子商务平台,会员可以购买歌曲,我的索引页面按月组织数据。一切正常,但现在我想严格显示当月的信息。 (在我们的案例中6月)。

目前我可以列出每个月的数据,但是当全年购买数百万首歌曲时,这可能会成为一个问题。

我如何才能显示当前的月数据?

CONTROLLER

def index
  @orders = Order.find(:all, :order => 'order_date, id')
end

查看

###How can i Only Display Current Month?
<% @orders.sort.group_by { |order| order.order_date.beginning_of_month }.each do |month, orders| %>
  <h3><%= month.strftime('%B') %> </h3>

  <% orders.group_by { |order| order.song.album.artist }.each do |artist, orders| %>
    <h4><%= artist.name %> </h4>

    <% orders.group_by { |order| order.song.album }.each do |album, orders| %>
      <h5><%= album.name %> </h5>

        <% orders.group_by { |order| order.song }.each do |song, orders| %>
          <p>(<%= orders.count %>) <%= song.title %> </p>
          <p><%= song.price %> </p>
        <% end %>

    <% end %>

  <% end %>

<% end %>

1 个答案:

答案 0 :(得分:1)

也许这样的事情? (在您的控制器中)

@orders = Orders.where('created_at < ? and created_at > ?', Time.now.end_of_month, Time.now.beginning_of_month)
相关问题