Wie kann ich einen Datumsbereich mit verschiedenen Intervallen durchlaufen?

8

Ich habe einen Datumsbereich (von, bis), den ich durch verschiedene Intervalle durchlaufen möchte (täglich, wöchentlich, monatlich, ...)

Wie kann ich diese Datumsbereiche durchlaufen?

Aktualisieren

Danke für deine Antworten, ich habe folgendes gefunden:

%Vor%

Dadurch wird ein Datumsbereich mit den Intervallen Woche, Monat oder Jahr durchlaufen und der Anfang und das Ende des angegebenen Intervalls berücksichtigt.

Da ich das in meiner Frage nicht erwähnte, wählte ich die Antwort, die mich in die richtige Richtung trieb.

    
tonymarschall 12.05.2012, 13:06
quelle

4 Antworten

6

Schleife, bis from date plus 1.day , 1.week oder 1.month größer ist als to date?

%Vor%     
Dave Newton 12.05.2012, 13:18
quelle
6

In Ruby 1.9 habe ich eine eigene Methode für den Bereich zum schrittweisen Durchlaufen von Zeitbereichen hinzugefügt:

%Vor%

Dann können Sie dies wie z. (Mein Beispiel verwendet eine Rails-spezifische Methode: 15. Minuten):

%Vor%

Beachten Sie, dass diese Methode die Ruby 1.9-Konvention verwendet, bei der Enumerationsmethoden einen Enumerator zurückgeben, wenn kein Block angegeben ist. Dadurch können Sie Enumeratoren zusammen stringulieren.

AKTUALISIEREN

Ich habe die meine persönliche core_extensions "Perle" hinzugefügt. Wenn Sie dies in Ihrem Rails-Projekt verwenden möchten, fügen Sie einfach Folgendes zu Ihrer Gemdatei hinzu:

%Vor%     
pdobb 02.07.2012 02:42
quelle
4

Die Succ-Methode ist in 1.9-Bereich veraltet. Ich wollte dieselbe Sache in der Woche machen und kam zu dieser Lösung:

%Vor%

Dies gibt ein Array der Woche im Intervall zurück. Leicht anpassbar für Monate.

    
tal 22.03.2013 10:18
quelle
0

Sie haben die Schrittmethode für das Range-Objekt. Ссылка

    
bcd 12.05.2012 13:24
quelle