Rails 3 / Ruby 1.9.2 Date.tomorrow ist nicht korrekt

8

Mit Ruby 1.9.2 und Rail 3 auf Mac Snow leopard

%Vor%

Stimmt etwas mit der Ruby-Date-Klasse nicht oder hat das etwas damit zu tun, wie ich Ruby installiert habe?

Bearbeiten:

%Vor%

Ok, die Rails Date-Klasse scheint ein wenig buggy. Die DateTime-Klasse scheint jedoch einwandfrei zu funktionieren. Danke Derp und Adam

    
Mike 26.09.2011, 00:24
quelle

4 Antworten

9

Ich beobachte das auch. Sie können DateTime.now.tomorrow.to_date versuchen.

    
Adam Eberlin 26.09.2011, 00:59
quelle
10

Hat online nach Informationen gesucht und ist auf folgendes gestoßen:
Ссылка

Überprüfen Sie den letzten Kommentar:

  

Ich stimme Ihnen zu, dass es ein bisschen verwirrend ist, dass Sie verwenden müssen   Date.current mit Date.yesterday statt Date.today, aber die   Faustregel ist, dass Rails die Funktionsweise von Ruby-Methoden nicht ändert   welches Date.today ist. Alles, was wir tun können, ist eine bessere Dokumentation und   stellen Sie sicher, dass die Menschen sich des feinen Unterschieds bewusst sind.

Mit anderen Worten: Verwenden Sie current (rails) anstelle von today (ruby), um Probleme zu vermeiden.

    
derp 26.09.2011 01:02
quelle
1

Sie können auch Date.today + 1.day ausführen.

    
Christine Dolendo 25.02.2015 16:00
quelle
0

Wenn Sie eine neuere Version von Ruby verwenden, können Sie Date.current.tomorrow verwenden, um das Datum von morgen zu drucken.

Zum Beispiel: puts "Tomorrow's date is : #{Date.current.tomorrow}"

Um mehr über Daten und Zeit zu erfahren, folgen Sie bitte den nachstehenden Links.

RubyOnRails.org und RailsGithub

    
Vishal Nagda 16.08.2016 05:45
quelle