views:

143

answers:

2

I'm unable to get SQL and Rails to play properly when trying to find Categories that are created each day, the past 7 days.

So basically I want to find each Category sorted by the day they were created for the past 7 days.

I found this on stackoverflow, but it isn't finding a Category that I just created:

Category.all(:conditions => ["created_at > ? AND created_at < ?", t.at_beginning_of_day, t.tomorrow.at_beginning_of_day])

Any help?

A: 

Turns out it was UTC time difference.

range = "created_at #{(5.days.ago.utc...Time.now.utc).to_s(:db)}"
Category.all(:conditions => range)

That did the trick. Can anyone tell me if there is a better way to do it?

Senthil
Try this: Category.all :conditions => { :created_at => 5.days.ago.utc...Time.now.utc } -- it will convert to an appropriate ranged sql select on its own.
hurikhan77
A: 

Thank you very much, I had the same problem. Have not found a better way yet

Seamus