timetables

timetables met à jour les emplois du temps présents dans la base de données.

Il est fortement recommandé d’exécuter régulièrement cette commande à l’aide d’une tâche cron.

Utilisation

$ ./manage.py timetables [--all] [--force] [--week week] [--year year]

Par défaut, timetables met à jour seulement la semaine courante ou à venir le week-end, et ne met pas à jour si la dernière mise à jour présente dans la base de données est plus récente que celle présente dans la source. Les différents paramètres permettent de contrôler ce comportement :

--all permet de mettre à jour toutes les semaines présentes dans la source.

--force force la mise à jour, même si la dernière mise à jour des emplois du temps présente dans la base de données est plus récente que celle présente dans la source.

--week permet de spécifier la semaine à mettre à jour.

--year permet de spécifier l’année à mettre à jour.

Comportement

Pour chaque emploi du temps, timetables récupère la source, supprime les cours sur la période couverte par cette mise à jour, parse la source et insère les cours dans la base de données.

Cette mise à jour est effectuée de manière transactionnelle : si la mise à jour d’une source échoue au milieu du processus, les données supprimées au début seront entièrement restaurées, les données rajoutées seront supprimées, et une erreur sera affichée. Cela n’affecte pas la mise à jour des autres emplois du temps.