aboutsummaryrefslogtreecommitdiff
path: root/Documentation/usage/commands/timetables.rst
blob: 723b5aad33158679604cb74c240ecf1e636610a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
==============
``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 <ref-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.