logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
utilisateurs:hypathie:tutos:developpement-pyhon-utiliser-django [15/12/2015 07:48]
Hypathie [Créer des projets Django en python2 ou python3]
utilisateurs:hypathie:tutos:developpement-pyhon-utiliser-django [16/12/2015 06:55]
Hypathie [Créer des projets Django en python2 ou python3]
Ligne 333: Ligne 333:
 </​note>​ </​note>​
  
-====Un petit résumer ​====+====Résumer des fichiers de configuration et commandes "​manage.py" ​====
  
 ===Le fichier ''​settings.py''​ : pour associer une BDD au projet === ===Le fichier ''​settings.py''​ : pour associer une BDD au projet ===
Ligne 390: Ligne 390:
 </​code>​ </​code>​
  
-Cela permettra de générer des scripts de type sql correspondant aux entités de la base de données.+Comme ceci :
  
 <code retour> <code retour>
Ligne 403: Ligne 403:
 ) )
 </​code>​ </​code>​
 +  - Cela dit à Django de générer de fichier de scripts (en sql) correspondant aux entités de la base de données : \\ Voir le paragraphe https://​debian-facile.org/​utilisateurs:​hypathie:​tutos:​developpement-pyhon-utiliser-django?&#​la-commande-managepy-makemigrations
 +  - Cela dit à Django de créer une arborescence de fichiers pour créer des Modèles : \\ Voir le paragraphe création de modèle : https://​debian-facile.org/​utilisateurs:​hypathie:​tutos:​developpement-pyhon-utiliser-django#​le-fichier-modelspy-pour-coder-des-modeles
 +
 +===Commande manage.py startapp polls : créer les fichiers pour coder en python des Modèles===
 +
 +  * Toujours à la racine du projet Django pour utiliser manage.py
 +
 +<code user>cd ~/​ProjetsDjangoPy3/​premierProjet</​code>​
 +
 +  * Si on est sorti du shell pyenv
 +
 +<​code>​pyenv activate 1.8-3.4</​code>​
 +
 +<code user>​python manage.py startapp polls</​code>​
 +
 +<​note>​
 +
 +  * On remarque que l'​arborescence a changé :
 +
 +Cela a crée le répertoire polls à la racine du dossier consacré au projet django :
 +
 +<code user>​tree</​code>​
 +<​code>​
 +.
 +├── db.sqlite3
 +├── manage.py
 +├── polls
 +│   ​├── admin.py
 +│   ​├── apps.py
 +│   ​├── __init__.py
 +│   ​├── migrations
 +│   ​│ ​  ​├── 0001_initial.py
 +│   ​│ ​  ​├── __init__.py
 +│   ​│ ​  ​└── __pycache__
 +│   ​│ ​      ​├── 0001_initial.cpython-34.pyc
 +│   ​│ ​      ​└── __init__.cpython-34.pyc
 +│   ​├── models.py
 +│   ​├── __pycache__
 +│   ​│ ​  ​├── admin.cpython-34.pyc
 +│   ​│ ​  ​├── __init__.cpython-34.pyc
 +│   ​│ ​  ​└── models.cpython-34.pyc
 +│   ​├── tests.py
 +│   ​└── views.py
 +└── premierProjet
 +    ├── __init__.py
 +    ├── __pycache__
 +    │   ​├── __init__.cpython-34.pyc
 +    │   ​├── settings.cpython-34.pyc
 +    │   ​├── urls.cpython-34.pyc
 +    │   ​└── wsgi.cpython-34.pyc
 +    ├── settings.py
 +    ├── urls.py
 +    └── wsgi.py
 +</​code>​
 +
 +</​note>​
 +
 +
  
 ===Commande de création de Modèles : manage.py migrate=== ===Commande de création de Modèles : manage.py migrate===
Ligne 457: Ligne 515:
  
 <code user>cd ~/​ProjetsDjangoPy3/​premierProjet/</​code>​ <code user>cd ~/​ProjetsDjangoPy3/​premierProjet/</​code>​
 +<code user>​pyenv activate 1.8-3.4</​code>​
  
 <code user>​python manage.py makemigrations</​code>​ <code user>​python manage.py makemigrations</​code>​
 <code retour>​No changes detected</​code>​ <code retour>​No changes detected</​code>​
  
 +===Le fichier models.py pour coder des Modèles ===
  
 +C'est là qu'on code des Modèles en python :
  
- +<code user>cd ~/​ProjetsDjangoPy3/​premierProjet/ ​&& pyenv activate 1.8-3.4</​code>​
- +
- +
-====Création de Modèle==== +
- +
-C'est presque du code first ! LOL +
- +
-  * On se place dans le répertoire "​~/​ProjetsDjangoPy3/​premierProjet"​ : +
-<code user>cd ~/​ProjetsDjangoPy3/​premierProjet</code> +
- +
-  * On utilise manage.py pour créé l'​arborescence nécessaire à l'​utilisation de Modèle : +
- +
-<code user>​python manage.py startapp polls</​code>​ +
- +
-<​note>​ +
- +
-  * On remarque que l'​arborescence a changé : +
- +
-Cela a crée le répertoire polls à la racine du dossier consacré au projet django : +
- +
-<code user>​tree</​code>​ +
-<​code>​ +
-+
-├── db.sqlite3 +
-├── manage.py +
-├── polls +
-│   ​├── admin.py +
-│   ​├── apps.py +
-│   ​├── __init__.py +
-│   ​├── migrations +
-│   ​│ ​  ​├── 0001_initial.py +
-│   ​│ ​  ​├── __init__.py +
-│   ​│ ​  ​└── __pycache__ +
-│   ​│ ​      ​├── 0001_initial.cpython-34.pyc +
-│   ​│ ​      ​└── __init__.cpython-34.pyc +
-│   ​├── models.py +
-│   ​├── __pycache__ +
-│   ​│ ​  ​├── admin.cpython-34.pyc +
-│   ​│ ​  ​├── __init__.cpython-34.pyc +
-│   ​│ ​  ​└── models.cpython-34.pyc +
-│   ​├── tests.py +
-│   ​└── views.py +
-└── premierProjet +
-    ├── __init__.py +
-    ├── __pycache__ +
-    │   ​├── __init__.cpython-34.pyc +
-    │   ​├── settings.cpython-34.pyc +
-    │   ​├── urls.cpython-34.pyc +
-    │   ​└── wsgi.cpython-34.pyc +
-    ├── settings.py +
-    ├── urls.py +
-    └── wsgi.py +
-</​code>​ +
- +
-</​note>​ +
- +
- +
-  * On crée des Modèles dans le fichier models.py :+
  
 <code user>vim polls/​models.py</​code>​ <code user>vim polls/​models.py</​code>​
Ligne 548: Ligne 552:
 </​file>​ </​file>​
  
-  * On édite encore une fois le fichier ''​settings.py''​ pour ajouter '''​polls',''​ la section ''​INSTALLED_APPS''​ 
  
-<code user>vim premierProjet/​settings.py</​code>​ +  ​Cette fois la commande "​makemigrations"​ va créer un script de type SQL de creation et/ou mise à jour de la base de données associées au projet, par défaut ce script est le fichier "​polls/​migrations/​0001_initial.py"​ :
-<​code>​ +
-... +
-INSTALLED_APPS = [ +
-    '​django.contrib.admin',​ +
-    '​django.contrib.auth',​ +
-    '​django.contrib.contenttypes',​ +
-    '​django.contrib.sessions',​ +
-    '​django.contrib.messages',​ +
-    '​django.contrib.staticfiles',​ +
-    '​polls',​ +
-+
-... +
-</​code>​ +
- +
-  ​La commande "​makemigrations" ​ci-dessous, ​va créer un script de type SQL de creation et/ou mise à jour de la base de données associées au projet, par défaut ce script est le fichier "​polls/​migrations/​0001_initial.py"​ :+
  
 <code user>​python manage.py makemigrations polls</​code>​ <code user>​python manage.py makemigrations polls</​code>​
Ligne 581: Ligne 569:
 <code user>​python manage.py sqlmigrate polls 0001</​code>​ <code user>​python manage.py sqlmigrate polls 0001</​code>​
  
-  * Mais c'est la commande suivante qui applique les changements ​apportés aux Models dans la base de données :+  * Mais c'est la commande suivante qui applique les changements ​correspondants à ce script afin que les entités de la base de données ​soient l'​image des classes du Modèle ​:
  
 <code user>​python manage.py migrate</​code> ​ <code user>​python manage.py migrate</​code> ​
Ligne 591: Ligne 579:
   * Explication sur API : http://​sametmax.com/​quest-ce-quune-api/​   * Explication sur API : http://​sametmax.com/​quest-ce-quune-api/​
  
-  * Pour utiliser l'API Django depuis un shell python :+ 
 +===La commande "​python manage.py shell" : pour interroger le Modèle et ses méthodes === 
 +Si on a désactivé le shell pyenv et/ou qu'on est sorti du dossier pour Django : 
 + 
 +<code user>cd ~/​ProjetsDjangoPy3/​premierProjet/​ && pyenv activate 1.8-3.4</​code>​ 
 + 
 +Pour utiliser l'API Django depuis un shell python :
  
 <code user>​python manage.py shell</​code>​ <code user>​python manage.py shell</​code>​
utilisateurs/hypathie/tutos/developpement-pyhon-utiliser-django.txt · Dernière modification: 06/01/2016 10:18 par Hypathie

Pied de page des forums

Propulsé par FluxBB