Création d’une application Django avec déploiement sur Google Cloud Platform :
ÉTAPE 1 création de l’application ‘Hello world’
Ce tutoriel décrit étape par étape la conception d’une application web minimale ‘Hello world’ en utilisant le framework Django.
Cela nécessite aussi les prérequis suivants :
- Savoir utiliser le terminal et avoir un outil de gestion d’environnement virtuel (pyenv dans ce tutoriel)
- Avoir des bases de développement en Python
Création du projet Django
Créez un dossier hello_world
pour votre projet puis ouvrez un terminal dans ce dossier afin d’y créer un environement virtuel local Python avec les commandes suivantes
pyenv virtualenv 3.10.6 hellowordl_project
pyenv local hellowordl_project [🐍 hellowordl_project]
Il faut ensuite installer Django :
pip install django
Ensuite créez le projet Django :
django-admin startproject myproject
Cela créera un dossier appelé myproject
avec la structure de base d'un projet Django. (Un projet Django peut contenir plusieurs applications).
Entrez ensuite dans le dossier du projet.
cd myproject
Création de l’application Django ‘myapp’
python manage.py startapp myapp
Cela créera un dossier myapp
contenant les fichiers de votre application.
Configuration l'application dans le fichier settings.py
Le fichier settings.py est le fichier de configuration de votre projet Django. C’est dans ce fichier que nous allons renseigner les espaces de stockage, les bases de données et différentes applications présentes dans le projet. Dans le fichier myproject/
settings.py
, ajouter 'myapp'
à la liste INSTALLED_APPS
et ajouter 'CSRF_TRUSTED_ORIGINS'
avec la liste suivante (A MODIFIER LORSQUE L’URL sera donné par Google CLoud Run).
INSTALLED_APPS = [
# ...
'myapp',
]
CSRF_TRUSTED_ORIGINS = [
'https://localhost',
'https://127.0.0.1'
]
Création de la première vue
Il s’agit de la partie ‘backend’ de l’application. Dans le fichier myapp/views.py
, créez une vue simple "Hello World":
from django.http import HttpResponse
def hello_world(request):
return HttpResponse("Hello, World!")
Configuration de l'URL
Ce fichier permet de gérer les urls de notre application. Dans le fichier myapp/urls.py
, configurez l'URL pour la vue "Hello World":
from django.urls import path
from .views import hello_world
urlpatterns = [
path('hello/', hello_world, name='hello_world'),
]
Configuration des URLs globales
Ce fichier permet de gérer les urls de notre projet. Dans le fichier myproject/urls.py
, inclure les URLs de votre application:
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('admin/', admin.site.urls),
path('myapp/', include('myapp.urls')),
]
Création des migrations
Il s’agit d’une étape importante qui permet d’appliquer des changements au projet. On parle de migrations. On utilisera à nouveau cette ligne de commande quand on abordera la base de données.
python manage.py migrate
Création d’un superutilisateur (optionnel)
python manage.py createsuperuser
Username (leave blank to use 'utilisateur'): user_name
Email address: [my_email@email.com](mailto:my_email@email.com)
Mot de passe : user_password
Test du serveur de développement
Cette ligne de commande permet de tester localement l’application :
python manage.py runserver
Rendez-vous sur http://127.0.0.1:8000/myapp/hello/
dans votre navigateur, et vous devriez voir la page "Hello, World!"
Prochaine étape : création d’un container Docker et premier déploiement sur GCP