Page:
manage.py
No results
2
manage.py
Martin Pepin edited this page 2016-06-28 23:03:37 +02:00
Commandes utiles pour interagir avec gestioCOF
Django fournit un certain nombre de fonctions pour interagir avec GestioCOF en ligne
de commande. Pour les lancer, taper python manage.py <command_name>
. Une partie
d'entre elles sont décrites ci-dessous.
Les indispensables
- La commande
runserver
… lance le serveur ! On peut spécifier une interface et un port en ajoutant à la suite0.0.0.0:8000
par exemple. - La commande
migrate
permet de faire suivre la base de donnée lorsque les modèles changent. Les "migrations" appliquées parmigrate
sont stockées dansapp_name/migrations/
.
Lorsque vous effectuez des changements dans les modèles, utilisezmakemigrations
(cf plus bas) pour créer ces fichiers de migration automatiquement.
On peut rétablir une version précise de la BDD, pour une application, avecmigrate bda 0001
par exemple. - La commande
makemigrations
crée automatiquement les fichiers de migrations dont il est question plus haut. Ils sont stockés dansapp_name/migrations/
. Ils peuvent être édités à la main si les migrations automatiques ne suffisent pas à vos besoins. Typiquement s'il faut ajouter un élément à la base de donnée pour la rendre cohérente. Cf https://docs.djangoproject.com/en/1.9/ref/migration-operations/ pour plus de détails. Voir aussi https://git.eleves.ens.fr/cof-geek/gestioCOF/blob/master/bda/migrations/0002_add_tirage.py comme exemple. - La commande
createsuperuser
permet de créer un utilisateur avec tous les droits. Il peut créer des utilisateurs, des objets, etc via l'[interface-admin](gestiocof admin).
Autres commandes utiles
- La commande
shell
ouvre un shell python qui connaît la config du site. Ça permet de faire toutes les opérations qu'on pourrait faire depuis une vue par exemple. Utile pour faire des essais avant de coder ou manipuler la base de données. - Un autre commande permettant de manipuler la base de donneés :
dbshell
qui lance un shell mysql sur la BDD de GestioCOF - Les commandes
loaddata
etdumpdata
permettent respectivement de charger et d'exporter tout ou partie de la base de données. À noter que l'option--indent=4
est utile pour la lisibilité. Attention il peut se passer des choses pas nettes si on charge une bdd dans une bdd non vide.
Doc officielle
Pour plus de détails sur ces commandes et d'autres encore, ne pas hésiter à taper
python manage.py help <command_name>
et à visiter
https://docs.djangoproject.com/en/1.9/ref/django-admin/