============== ``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 :ref:`à l’aide d’une tâche cron `. Utilisation =========== .. code:: shell $ ./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.