PostgreSQL est l'un des meilleurs choix pour un environnement de stockage sécurisé. Apprenez à l'intégrer à Django.

L'ajout d'une base de données à votre application garantit l'intégrité et la sécurité des données. PostgreSQL (Postgres) est un système de gestion de base de données SQL (Structured Query Language) que vous voudrez peut-être envisager.

Postgres prend en charge la plupart des systèmes d'exploitation populaires et est compatible avec les langages de programmation modernes. Postgres gère également divers types de données et de documents. Avec des compétences SQL très demandées, apprendre à configurer et à utiliser PostgreSQL est un avantage.

Vous apprendrez à installer, configurer et utiliser Postgres dans une application Django. Vous testerez également la fonctionnalité de la base de données en ajoutant, stockant et récupérant des données de la base de données.

1. Installez PostgreSQL sur votre système

Les instructions suivantes expliquent comment installer Postgres sur le système d'exploitation Ubuntu

instagram viewer
. Si vous êtes un utilisateur Windows, vous pouvez suivre ceci guide étape par étape pour installer Postgres sur Windows.

Avant d'installer Postgres, mettez à jour les packages de version et leurs dépendances avec la commande suivante :

$ sudo apt-get update

Ensuite, installez PostgreSQL avec la commande suivante :

$ sudo apt-get install postgresql postgresql-contrib libpq-dev

Lorsque vous êtes invité à confirmer l'installation, appuyez sur Oui pour Oui.

Connectez-vous au serveur à l'aide de la commande suivante :

$ sudo -i -u postgres

Ensuite, utilisez le client de base de données pour déterminer la version de Postgres installée.

Exécutez la commande psql --version.

postgres@nameofaccount:~$ psql --version

La sortie affichera votre version de Postgres comme indiqué ci-dessous :

psql (PostgreSQL) 14.5 (Ubuntu 14.5-0ubuntu0.22.04.1)

Quittez le compte Postgres en exécutant le sortie commande.

postgres@nameofaccount:~$ exit

2. Créer une base de données

Vous devez créer une base de données que vous connecterez à une application Django. Revenez au shell Postgres et exécutez les commandes suivantes consécutivement.

sudo -i -u postgres
$ psql

Utilisez ensuite le client pour créer une base de données sur le serveur.

postgres=# create database new_db;

Le serveur renvoie le terme CREATE DATABASE lorsqu'il crée une base de données. Vous pouvez également vérifier par répertoriant toutes les bases de données dans le système avec la commande \l.

postgres=# \l

Structure de PostgreSQL

Comme une base de données SQL typique, PostgreSQL stocke les données dans des tables. Les tableaux représentent différents éléments/modèles dans une application. Les tableaux ont un nombre fixe de colonnes et de lignes.

Chaque table a une colonne particulière appelée clé primaire, un identifiant unique pour chaque ligne stockée dans la table. Une table peut également avoir une clé étrangère la connectant à la clé primaire d'une autre table.

Les clés étrangères définissent les relations entre deux tables.

Ensuite, vous devez créer une application Django et lier la base de données. Mais d'abord, installez psycopg2 pour aider à connecter l'application et la base de données.

3. Installer Django et la bibliothèque Psycopg2

Pour connecter Postgres à une application Django, vous devez installer le psycopg2 bibliothèque. Il s'agit d'une dépendance Postgres qui permet de se connecter et de communiquer avec Django.

Exécutez la commande suivante pour installer psycopg2 et Django:

$ pipenv install psycopg2 Django

4. Créer une application Django

Vous devez créer une application Django qui utilisera la base de données Postgres. Tout d'abord, créez un projet appelé mybome pour prendre en charge l'application. Les projets Django génèrent automatiquement les dépendances et les paramètres d'application nécessaires pour exécuter l'application.

Créez un dossier appelé Boma-montre et accédez-y avec les commandes suivantes :

$ mkdir Boma-watch
$cd Boma-watch

Ensuite, créez un projet Django avec la commande suivante :

$ django-admin startproject myboma .

Assurez-vous d'ajouter le point à la fin de la commande, sinon Django créera un nouveau dossier pour héberger le projet.

Ensuite, créez une nouvelle application appelée boma avec la commande suivante :

$ django startapp boma

Si vous n'avez jamais travaillé avec Django auparavant, vous pouvez démarrer avec un guide du débutant sur Django. Après avoir exécuté l'application sur le navigateur pour confirmer qu'elle fonctionne, vous la connecterez à la base de données dans la section suivante.

5. Connecter la base de données à l'application Django

Vous allez maintenant connecter votre application Django à la base de données que vous avez créée en procédant comme suit :

Étape 1: Modifier les paramètres du projet pour utiliser Postgres

Vous devez modifier les paramètres du projet pour connecter l'application Django à Postgres. Naviguer vers le projet paramètres.py déposer. Ensuite, changez le BASES DE DONNÉES settings pour ajouter vos configurations Postgres.

Remplace le UTILISATEUR et MOT DE PASSE avec votre psql nom d'utilisateur et mot de passe.

#...
DATABASES = {
'default': {
'ENGINE':'django.db.backends.postgresql',
'NAME':'new_db',
'USER':'morine',
'PASSWORD':'password',
}
}

Étape 2: Mettre à jour le fuseau horaire

Ensuite, dans le paramètres.py fichier, définissez le Fuseau horaire pour refléter votre emplacement. Les projets Django sont préconfigurés avec le fuseau horaire UTC.

TIME_ZONE = Africa/Nairobi

Étape 3: créer un modèle

Créer un Profil modèle dans votre application. Vous utiliserez cette classe de modèle pour créer des tables dans la base de données afin de stocker le nom et les données bio de l'application.

classProfile(models.Model):
name = models.CharField(max_length=30)
bio = models.TextField(max_length=100)

def__str__(self):
return self.name

Étape 4: Démarrer la migration

Exécutez les commandes suivantes pour démarrer la migration :

(virtual)$ python manage.py makemigrations boma 
(virtual)$ python manage.py migrate

Une migration réussie ressemblera à ceci :

python manage.py migrer commande sélectionne l'application à partir de la INSTALLED_APPS settings > models.py et crée des tables pour chaque modèle. Vous avez connecté avec succès Postgres à votre application.

Maintenant, vous pouvez tester les commandes CREATE, READ, UPDATE et DELETE (CRUD) sur votre application.

6. Testez les commandes CRUD sur votre application

L'API Python de Django vous permettra d'effectuer certaines opérations de base de données CRUD. L'API connecte les fonctions aux modèles pour vous permettre de manipuler la base de données.

Ouvrez le shell Python dans le projet Django à l'aide de la commande suivante :

(virtual)$ python manage.py shell

La commande ouvrira une console où vous pourrez tester les opérations CRUD.

Créer une opération

Tout d'abord, importez le Profil modèle de la des modèles module à l'aide de la commande suivante :

 from boma.models import Profile

Ensuite, créez une instance de Profil classer et transmettre vos données.

 prof1 = Profile.objects.create(name ='Ken',bio ='I am a Scorpio')

Ensuite, enregistrez les données dans la base de données.

prof1.save()

Opération de lecture

Après avoir créé des données dans la base de données et les avoir enregistrées, vous pouvez les interroger pour récupérer les données enregistrées.

Utilisez le Profil.objects.all() pour récupérer toutes les données du Profil table dans la base de données.

Profile.objects.all() #outputs 

Vous pouvez également récupérer un seul objet à l'aide d'un clé primaire ou paquet. Ce sont des numéros attribués à chaque élément enregistré dans la base de données.

Profile.objects.get(pk = 1) #outputs 

Opération de mise à jour

Vous pouvez mettre à jour les données enregistrées à l'aide de la commande suivante :

Profile.objects.filter(id = 1).update(name ='Kim';) #outputs 1

Pour vérifier si le nom a été mis à jour, exécutez la commande suivante :

Profile.objects.filter(id = 1) #outputs 

Supprimer l'opération

Vous pouvez supprimer des éléments enregistrés à l'aide de la commande suivante :

Profile.objects.filter(id = 1).delete() #outputs (1, {app.Profile: 1})

Pour confirmer la suppression, exécutez la commande suivante :

Profile.objects.filter(id = 1) #outputs 

Vous pouvez voir que l'ensemble de requêtes est vide, indiquant que les données ne sont plus dans la base de données.

Pourquoi utiliser PostgreSQL?

Postgres est l'une des bases de données SQL les plus avancées. Ses versions open source garantissent des améliorations constantes des performances.

La gestion des charges de travail est plus facile et le tri de la base de données s'améliore à chaque version. L'une des raisons pour lesquelles Postgres est populaire est qu'il est compatible avec la plupart des langages de programmation et des systèmes d'exploitation modernes.