Jak majac obiekt klasy Time otrzymac nastepny miesiac ? Nie wiem czy to bug ale jak po prostu dodalem “1.month” to ruby dodal po prostu 30 dni i gdy mam miesiac z 31 dniami ten sposob sie nie sprawdza…
np:
time = Time.parse(“2007-07-01”)
=> Sun Jul 01 00:00:00 CEST 2007
time = time + 1.month
=> Tue Jul 31 00:00:00 CEST 2007
Jak majac obiekt klasy Time otrzymac nastepny miesiac ? Nie wiem czy to bug ale jak po prostu dodalem “1.month” to ruby dodal po prostu 30 dni i gdy mam miesiac z 31 dniami ten sposob sie nie sprawdza…
np:
time = Time.parse(“2007-07-01”)
=> Sun Jul 01 00:00:00 CEST 2007
time = time + 1.month
=> Tue Jul 31 00:00:00 CEST 2007[/quote]
No jasne, że liczba 1 nie ma pojęcia w jakim kontekście jest użyta. 1.month nie jest w stanie rozpoznać czy chodzi o miesiąc 29, 29, 30 czy 31 dniowy. A tak w sumie, to nie bardzo rozumiem co chcesz uzyskać. Załóżmy że masz 30 stycznia. Co ma być następnym miesiącem?
Jak mam styczen chce otrzymac luty, po lutym marzec itd… Ogolnie chodzi o zrobienie iteratora po dniach i miesiącach. Używalem do tego rowniez klasy range ale nie wiem dlaczego skrypt sie strasze mulil i musialem z tego zrezygnowac…
Chodzi o sam miesiąc, czy o konkretny dzień “miesiąc później”? Np. 20 stycznia + 1 miesiąc co ma dawać? 1 luty? 28 lub 29 luty? I co z przełomem roku? Co ma być “miesiąc później” licząc od 31 grudnia?
wielkie dzieki… teraz mi glupio bo patrzylem tylko na doca klasy time w ruby a tu taka milo niespodzianka. Swoja droga dziwne ze sam ruby nie wspiera takich rzeczy…