22-08-2010, 11:35 AM
(Modification du message : 22-08-2010, 11:40 AM par Sephi-Chan.)
Je suis revenu sur mon calendrier ces jours-ci et j'y ai apporté quelques modifications.
Le but est d'afficher toujours 6 semaines, puisque c'est la durée maximale sur laquelle peu s'étaler un mois.
Voici la solution la plus simple que j'ai trouvé, en utilisant les méthodes ajoutées à la classe Date par ActiveSupport (par exemple beginning_of_month et beginning_of_week) :
Ah, les frameworks !
En plus, la source de chaque méthode est indiquée sur la documentation, ça permet de se rendre compte de ce qui se passe.
Sephi-Chan
Le but est d'afficher toujours 6 semaines, puisque c'est la durée maximale sur laquelle peu s'étaler un mois.
Voici la solution la plus simple que j'ai trouvé, en utilisant les méthodes ajoutées à la classe Date par ActiveSupport (par exemple beginning_of_month et beginning_of_week) :
@date = Date.today
@first_day_of_month = @date.beginning_of_month
@start_day = @first_day_of_month.beginning_of_week
@end_day = @start_day + 41.days
# On pourrait aussi l'écrire @end_day = @start_day + 6.weeks - 1.day
Ah, les frameworks !
En plus, la source de chaque méthode est indiquée sur la documentation, ça permet de se rendre compte de ce qui se passe.
Sephi-Chan