Ici, je suis en train d'ignorer les vacances prédéfinies dans un tableau, mais la boucle en infini.Ruby skipping week-ends et jours fériés
@holidays = [DateTime.new(2016,03,15), DateTime.new(2016,03,17)]
def skip_holidays(date)
date += 1
while @holidays.map{ |holiday| holiday == date} do
date = date.next_day.change(hour: 9)
end
date
end
skip_holidays(DateTime.new(2016,3,14))
Cependant, cette boucle fonctionne ici parfaitement
def skip_weekends(date)
date += 1
while (date.saturday?) || (date.sunday?) do
date = date.next_day.change(hour: 9)
end
date
end
skip_weekends(DateTime.new(2016,3,14))
Comment est-ce et comment le contourner?
La sortie @ de holiday.map un tableau. [false, true] est considéré comme vrai. Même [fasle, false] sera évalué comme une véritable condition. Essayez d'utiliser @ holidays.include? au lieu. – Syl