开发者

Rails 3/Ruby 1.9.2 Date.tomorrow not correct

Using Ruby 1.9.2 and Rail 3 on Mac Snow leopard

ruby-1.9.2-p290 :001 > Date.today
 => Sun, 25 Sep 2011 
ruby-1.9.2-p290 :002 > Date.tomorrow
 => Tue, 27 Sep 2011 

Is there maybe something wrong with the ruby date class or is this something to do with the way i installed ruby?

Edit:

ruby-1.9.2-p290 :039 > Date.current
 => Mon, 26 Sep 2011 
ruby-1.9.2-p290 :040 > 开发者_Go百科DateTime.now
 => Sun, 25 Sep 2011 20:47:01 -0500

Ok so the rails Date class seems a little buggy. The DateTime class appears to work fine though. Thanks derp and Adam


Was looking info online and came across this:
https://rails.lighthouseapp.com/projects/8994/tickets/6410-dateyesterday-datetoday


Check the last comment:

I do agree with you that its a bit confusing that you need to use Date.current with Date.yesterday instead of Date.today, but the general rule of thumb is Rails does not change how Ruby methods work, which Date.today is. All we can do is add better documentation and make sure people are aware of the subtle difference.


In other words, use current(rails) instead of today(ruby) to avoid problems.


I am also observing this. You can try DateTime.now.tomorrow.to_date.


You can also do Date.today + 1.day.


If you're using newer version of ruby then you can use Date.current.tomorrow to print tomorrow's date.

For example : puts "Tomorrow's date is : #{Date.current.tomorrow}"

To know more about data and time please follow below links.

RubyOnRails.org and RailsGithub

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜