Ich brauche mehrere Monate in einer Ruby on Rails-Anwendung durchlaufen. Für jeden Monat muss ich den ersten und letzten Tag des jeweiligen Monats finden. Diese Daten werden dann in einer separaten Abfrage verwendet, um Ereignisse zu finden, die während dieser Daten auftreten, und Berechnungen für sie auszuführen.Wie durchlaufen Monate in Ruby on Rails
Anfangs habe ich versucht, so etwas wie:
(11.months.ago.to_date.month..Date.today.month).each do |m|
start_date = '01-#{m}-#{Date.today.year}'.to_date.beginning_of_month
end_date = '01-#{m}-#{Date.today.year}'.to_date.end_of_month
end
Natürlich ist das Jahr, in diesem Fall nicht für den Fall aktualisiert, dass vor 11 Monaten wieder zum Vorjahr beinhaltet gehen. Und ich denke nicht, dass diese Art von for/each-Schleife funktioniert. Ich versuchte auch, die Zahlen zu einem Array zuzuordnen und die gleiche Methode zu verwenden, aber einen Fehler erhalten.
Was ist der beste Weg, um so etwas zu erreichen?
Sind Sie beliebigen Start-/Enddaten erwartet? – Substantial