oujood.com

Modèle Django

En Django, un modèle est une classe qui est utilisée pour contenir les principaux éléments et méthodes. Chaque classe de modèle correspond à une seule table dans la base de données.
Un modèle Django est la fonctionnalité intégrée que Django utilise pour créer des tables, leurs champs et diverses contraintes. En bref, les modèles Django sont le SQL de la base de données que l'on utilise avec Django. Le SQL (Structured Query Language) est complexe et implique un grand nombre de requêtes différentes pour créer, supprimer, mettre à jour ou toute autre chose liée à la base de données. Les modèles Django simplifient les tâches et organisent les tables en modèles. En général, chaque modèle correspond à une seule table de base de données.

chercher |

Django Model

Un modèle Django est une table dans votre base de données.

Dans le présent chapitre, nous verrons comment utiliser les modèles de Django pour stocker des données dans la base de données de manière pratique. De plus, nous pouvons utiliser le panneau d'administration de Django pour créer, mettre à jour, supprimer ou récupérer les champs d'un modèle et diverses opérations similaires. Les modèles Django offrent simplicité, cohérence, contrôle de version et gestion avancée des métadonnées. Les éléments de base d'un modèle comprennent :

Chaque modèle est une classe Python qui a la sous-classe django.db.models.Model.

Chaque attribut du modèle représente un champ de la base de données.

Avec tout cela, Django vous fournit une API d'accès à la base de données générée automatiquement.

Base de données SQLite

Dans le chapitre Créer un projet Django, nous avons obtenu une base de données SQLite vide "db.sqlite3". Elle a été créée dans le dossier racine du projet "mmonmonde".

C'est cette base de données que nous allons utiliser dans ce tutoriel.

Créer une table (modèle)

Pour créer une nouvelle table, nous devons créer un nouveau modèle.

Dans le dossier /membres/, ouvrez le fichier models.py dsans votre éditeur. Il est presque vide par défaut, avec seulement une déclaration d'importation et un commentaire comme ci-dessous:

Fichier /membres/models.py:

  Copier le code

from django.db import models

# Create your models here.
Pour ajouter une table Membres dans notre base de données, commencez par créer une classe Membres, et décrivez-y les champs de la table :

  Copier le code

from django.db import models

class Membres(models.Model):
  prenom = models.CharField(max_length=255)
  nom = models.CharField(max_length=255)
  mail = models.CharField(max_length=255)
Le premier champ, " prenom ", est un champ texte qui contient le prénom des membres.
Le deuxième champ, "nom", est également un champ de texte contenant le nom de famille des membres.
le dernier champ, "mail", est également un champ de texte contenant l'adresse électroniqaue des membres.
Les champs " prenom " , " nom " et "mail" sont configurés pour avoir un maximum de 255 caractères.

Ensuite, dans la cmd, après avoir activé votre environnement virtuel, naviguez dans le dossier /monmonde/ et exécutez cette commande :
python manage.py makemigrations membres
Ce qui retournera :
(env_site) C:\Users\Admin\env_site\monmonde>python manage.py makemigrations membres
Migrations for 'membres':
  membres\migrations\0001_initial.py
    - Create model Membres

(env_site) C:\Users\Admin\env_site\monmonde>
Django crée un fichier "0001_initial.py" avec toutes les nouvelles modifications et le stocke dans le dossier /migrations/.

La prochaine fois que vous exécuterez py manage.py migrate, Django créera et exécutera une instruction SQL, basée sur le contenu du nouveau fichier dans le dossier migrations.

en suite exécutez la commande migrate :
python manage.py migrate
Ce qui retournera :
(env_site) C:\Users\Admin\env_site\monmonde>python migrate
Operations to perform:
  Apply all migrations: admin, auth, contenttypes, membres, sessions
Running migrations:
  Applying membres.0001_initial... OK

(env_site) C:\Users\Admin\env_site\monmonde>
La requête SQL créée à partir de ce modèle est :
CREATE TABLE "membres_membres" (
"id" INT NOT NULL PRIMARY KEY AUTOINCREMENT,
"prenom" varchar(255) NOT NULL,
"nom" varchar(255) NOT NULL),
"mail" varchar(255) NOT NULL);
Et voila. Vous avez maintenant une table Membres dans votre base de données dont le nom est "membres_membres"!

C'est cette table que nous utiliserons dans la suite de notre tutoriel.

Chaque fois que nous créons un modèle, supprimons un modèle, ou mettons à jour quoi que ce soit dans l'un des models.py de notre projet. Nous devons exécuter deux commandes :

makemigrations et migrate.

makemigrations génère essentiellement les commandes SQL pour les applications préinstallées (qui peuvent être consultées dans les applications installées dans settings.py) et le modèle de votre nouvelle application que vous ajoutez dans les applications installées, tandis que migrate exécute ces commandes SQL dans le fichier de base de données.

Et c'est dans le chaiptre suivant que nous allons utiliser notre table en y ajoutant les données necessaires à notre application membres.

Voir aussi nos tutoriel :

Géolocalisation en temps réel et Recherche d'adresses IP inversées REST API

Il permet de trouvez la ville, la région, le pays, le continent, la latitude, la longitude, le fuseau horaire, le décalage UTC, la devise, la langue, l'asn, l'organisation, l'indicatif téléphonique du pays, le membre de l'Union européenne (UE) à partir d'une adresse IP.

padding-top

Définit la marge intérieure supérieure d'un élément

XSLT introduction

XSLT introduction