Outils pour utilisateurs

Outils du site


Panneau latéral

Plan du Site:

python:flask:setup_nouveau_projet

Setup Nouveau Projet

Création d'un projet

Créer un nouveau dossier pour le projet “hello_world” :

mkdir /home/marc/hello_world
cd /home/marc/hello_world

Création d'un Virtual Environment :

python3 -m venv venv
source venv/bin/activate

Mise à jour de PIP :

pip install --upgrade pip

Intallation des packages :

pip install flask
pip install python-dotenv

Vérifier la version :

flask --version

  Python 3.10.6
  Flask 2.2.2
  Werkzeug 2.2.2

Application de base

/home/marc/hello_world
├── app
│   ├── static
│   │   ├── css
│   │   ├── js
│   │   ├── img
│   │   └── ...
│   ├── templates
│   │   ├── index.html
│   │   └── ...
│   ├── __init__.py
│   └── ...
├── venv
│   └── ...
├── .env
├── .gitignore
└── requirements.txt

Définir les variables d'environnement (fichier .env) :

.env
FLASK_APP   = app
FLASK_DEBUG = 1

Créer un fichier .gitignore selon la page gitignore_python

Y ajouter le fichier config.py et les dossiers de données à ne pas commiter :

.gitignore
...
 
data/
.vscode/
config.py

Générer le fichier requirements.txt de PIP :

pip freeze > requirements.txt

Créer un fichier __init__.py minimal :

app/__init__.py
from flask import Flask
 
app = Flask(__name__)
 
@app.route("/")
def home():
    return "<h1>Hello World !</h1>"

GIT

Initialiser le dépôt git local et faire un premier commit :

git init
git add --all
git commit -m "Initial commit"

Créer le dépôt distant selon la page Utiliser des dépôts distants sur son serveur privé

Configuration de l'application

Exemple de fichier config.py :

import os
 
SECRET_KEY    = "... clé secrète ... voir ci-dessous ..."
 
BASE_DIR      = os.path.abspath(os.path.dirname(__file__))
 
PATH_IMAGES   = os.path.join(BASE_DIR, 'images/')
PATH_DATABASE = os.path.join(BASE_DIR, 'data/')

Pour générer la clé secrète, voir la page Générer une Secret Key

Chargement des valeurs dans l'objet app :

app = Flask(__name__)
app.config.from_object('config')

Lancement du serveur de développement

Activer l'environnement virtuel si ce n'est pas encore fait.

source venv/bin/activate

Lancement du serveur :

flask run

Visiter le site (sur le port défini dans .env) :

http://127.0.0.1:5000/

Pour qu'il soit accessible depuis une autre machine sur le réseau, ajouter :

flask run --host=0.0.0.0
python/flask/setup_nouveau_projet.txt · Dernière modification: 2022/10/19 14:25 par marclebrun