Rails created_at find condition
I'm attempting to sum daily purchase amounts for a given user. @dates is an array of 31 dates. I need the find condition to compare a date from the array to the created_at date of the purchases. What I'm doing below compares the exact DateTime for the create_at column. I need it to look at the day itself, not the DateTime.
How can I write this so created_at is in between the date from the array?
<% @dates.each do |date| %>
<td><%=开发者_JAVA百科 current_user.purchases.sum(:amount, :conditions => ["created_at = ?", date]) %></td>
<% end %>
:conditions => {:created_at => start_date..finish_date}
You need to find the starting and ending dates in that array and then you will be able to the entries where created_at is in between using this:
:conditions => ["created_at >= ? AND created_at <= ?", start_date, finish_date]
精彩评论