Hi Peter I understand ... I dream about a format Date + am:pm ! ( created in the morning or created in the afternoon...) LOL
more, I need Time.... actually I need to split events into morning / afternoon events ( half day am:pm ) projects have half-day tasks only.. I found very useful the business_days gem, but nothing regarding am:pm management..... On Feb 7, 11:38 pm, Peter Vandenabeele <pe...@vandenabeele.com> wrote: > On Tue, Feb 7, 2012 at 6:12 PM, Erwin <yves_duf...@mac.com> wrote: > > all my date ties are stored with the standard :db format and being in > > western Europe, I have an UTC offset +1 > > > > Time.now.at_beginning_of_day > > => 2012-02-07 00:00:00 +0100 > > > I'ld like to know if I am right ( or wrong) in my date time based > > queries like : > > > scope :today, lambda { > > where("created_at >= ? AND created_at < ? ", > > Time.now.at_beginning_of_day, Time.now.tomorrow.at_beginning_of_day) > > } > > > which generates: > > SELECT `event_logs`.* FROM `event_logs` WHERE (created_at >= > > '2012-02-06 23:00:00' AND < '2012-02-07 23:00:00' ) > > > -------------- > > OR should I use the Time.now.utc to cope with the :db format ? > > > scope :today, lambda { > > where("created_at >= ? AND created_at < ? ", > > Time.now.utc.at_beginning_of_day, > > Time.now.utc.tomorrow.at_beginning_of_day) > > } > > which generates: > > SELECT `event_logs`.* FROM `event_logs` WHERE (created_at >= > > '2012-02-07 00:00:00' AND created_at < '2012-02-08 00:00:00' ) > > > my guess is the 2nd scope , but I am not sure > > > thanks for your feedback > > Just curious, could you not juet use Date (instead of Time). > > E.g. for contract start and end dates and programming that for an > international company in a previous life, I had changed back certain > fields from the initial choice of "time" (as seemed obvious because > of the default for "created_at" etc.) to "date" (Contract#starts_date > and Contract#end_date). > > So, it was then trivial to compare, understand and display the > date to the users. For the abstract concept of a "date", I learned > the hard way to use a Date (and not Time). > > So, maybe your database could have a column "creation_date" > that is really a Date and that is initialized when the record is > created in the local time zone of the user for which the Date > has a "real-life" sense. And then the start_date or creation_date > of e.g. his/her membership has an obvious local meaning. > > Just my 2 cents (and venting some old frustrations I suffered over this ...) > > HTH, > > Peter -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com. To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en.