ballon

Créer une application Hello World à l'aide de Flask Framework

Créer une application Hello World à l'aide de Flask Framework
Cet article couvrira un guide sur l'écriture d'une application hello world simple à l'aide du framework "Flask" basé sur Python. Flask peut être utilisé pour créer des applications Web minimales, extensibles et avancées à l'aide d'un ensemble de bibliothèques incluses dans son module. Tous les exemples de code de ce tutoriel sont testés sur Ubuntu 20.10 ayant Python version 3.8.6 et Flacon version 1.1.2.

À propos du flacon

Flask est un framework de développement d'applications Web basé sur Python qui est spécialement conçu pour être minimal pour vous permettre de démarrer. Cela permet un prototypage rapide, un développement rapide et un déploiement rapide. Toutes les fonctionnalités avancées que vous devez ajouter à votre application Web peuvent être ajoutées via des extensions. Le site officiel de Flask se décrit comme un « micro » framework puisqu'il laisse toutes les décisions importantes aux utilisateurs eux-mêmes et décide peu à leur place. Les utilisateurs peuvent choisir leurs propres moteurs de modèles, bibliothèques de gestion de base de données, outils de validation de formulaire, etc., bien que Flask soit livré avec des valeurs par défaut saines.

Installation de Flask sous Linux

Si vous utilisez Ubuntu, vous pouvez installer Flask en exécutant la commande mentionnée ci-dessous :

$ sudo apt installer python3-flask

Vous pouvez éviter d'utiliser la version du référentiel et installer la dernière version de Flask à partir du gestionnaire de packages « pip » en exécutant successivement les deux commandes suivantes :

$ sudo apt installer python3-pip
$ pip3 install flask

Si vous utilisez une autre distribution Linux, recherchez les packages "Flask" dans le gestionnaire de packages ou installez-le à partir de l'outil d'installation de package "pip". D'autres instructions détaillées sont disponibles ici.

Une fois l'installation terminée, vous pouvez vérifier la version de Flask en utilisant la commande spécifiée ci-dessous :

$ python3 -c "import flask; print(flask.__version__)"

Le modèle client-serveur

Comme indiqué précédemment, Flask est utilisé pour développer des applications Web. En règle générale, tous les frameworks de développement d'applications Web en Python et dans d'autres langages de programmation utilisent une architecture client-serveur. Flask utilise également un modèle client-serveur où les utilisateurs peuvent écrire une logique côté serveur pour créer des applications Web ou des sites Web. Le « client » désigne ici un navigateur Web ou toute autre application permettant le rendu de pages Web à l'aide des technologies HTML, JavaScript et CSS. Alors que le « serveur » fait référence à un serveur local ou distant sur lequel votre application Flask écrite en langage Python est exécutée.

Lorsque vous exécutez une application Flask localement sur votre PC, un serveur local est automatiquement créé pour servir l'application Web. Flask affichera une URL localhost dans votre terminal. Vous pouvez visiter cette URL dans n'importe quel navigateur Web pour afficher le résultat final. Vous pouvez également configurer un serveur distant pour faciliter la communication entre un client et un serveur et lancer votre propre site Web public ou application Web.

Vous pouvez créer du code HTML, JavaScript et CSS côté client nécessaire pour votre application Web en utilisant du code côté serveur écrit en Flask et Python. Mais une fois que l'application Web est déployée et que vous l'exécutez dans un navigateur Web, votre application Web ne verra ni ne comprendra le code Python. Il traitera uniquement HTML, JavaScript et CSS car seules ces technologies sont principalement prises en charge par les navigateurs Web. Vous pourrez toujours communiquer avec le serveur côté client à l'aide de requêtes HTTP. Vous pouvez très bien transmettre des données du client au serveur, les traiter en utilisant une logique côté serveur et renvoyer le résultat.

Ainsi, selon le type d'application Web que vous développez, vous devrez peut-être décider où implémenter la logique : côté serveur ou côté client au cas par cas.

Application simple Hello World dans Flask

Vous pouvez utiliser l'exemple de code ci-dessous pour créer une application "Hello World" simpliste dans Flask pour commencer :

de l'importation du flacon Flacon
app = Flacon (__nom__)
@app.route('/')
def hello_world_app() :
message = "Bonjour tout le monde!!"
retour de message

La première instruction de l'exemple de code ci-dessus importe la classe "Flask" du module "flask". Une fois importé, vous pourrez utiliser toutes les méthodes disponibles dans la classe « Flask ».

Dans l'instruction suivante, une nouvelle instance de la classe "Flask" est créée et le nom du fichier lui est fourni en argument. Si vous n'utilisez qu'un seul ".py" sans un "__init__ supplémentaire.py" généralement utilisé lors de la création d'une structure de fichier pour un package Python, le nom aura une valeur codée en dur de "__main__". L'argument "__name__" indique à Flask où rechercher les fichiers liés à l'application Flask en cours d'exécution. Vous pouvez également fournir votre propre chemin personnalisé vers votre fichier Flask principal au lieu de fournir un argument "__name__". Mais généralement, la plupart des développeurs n'utilisent que "__name__" et cela semble être une pratique standard.

Ensuite, une « décoration » « application.route" est attaché à la fonction "hello_world_app". Les fonctions de décoration étendent ou modifient la fonction à laquelle elles sont attachées, sans les changer réellement. Ici, "l'application.Le décorateur route" est utilisé pour spécifier le chemin de l'URL où la fonction attachée s'exécutera. Le symbole « / » indique à Flask d'exécuter une fonction sur l'URL « / », qui signifie domaine « racine » ou URL « racine ». Par exemple, si l'URL de votre application est « app.com", la fonction sera déclenchée pour "app.com" URL. Vous pouvez également le changer pour autre chose. Par exemple, en utilisant un décorateur « @app.route('/helloworld')", vous pouvez mapper la fonction sur "app.com/helloworld” URL.

Enfin la fonction « hello_world_app » permet de renvoyer le contenu que vous souhaitez afficher dans un navigateur web lorsque votre web app est en cours d'exécution.

Exécuter une application Flask

Pour exécuter une application Flask sous Linux, vous devez exécuter une commande au format suivant :

$ export FISK_APP=principal.py
$ exécution de la fiole

Changer « principal.py" au besoin pour le faire correspondre avec le vôtre .fichier "py" où vous avez écrit votre code Flask. La deuxième commande exécute votre application Flask. Vous pouvez également exécuter cette commande alternative :

$ FLACON_APP=principal.py ballon run

Après avoir exécuté ces commandes, vous devriez voir une sortie comme celle-ci :

Ouvrez simplement l'URL mentionnée dans le terminal dans un navigateur Web pour voir votre application en action.

Vous pouvez exécuter l'application Flask en mode débogage en utilisant la variable d'environnement « FLASK_ENV » au format suivant :

$ FLASK_ENV=développement FLASK_APP=principal.py ballon run

Utilisation du moteur de modèle Jinja2

Flask utilise « Jinja2 » pour le moteur de modèle pour faciliter l'écriture de code HTML en Python. Vous pouvez l'utiliser pour définir un balisage pour "Hello World!!" un message.

Créez un nouveau répertoire appelé « modèles » où se trouve votre script Flask principal. Dans le répertoire "template", créez un nouveau fichier nommé "hw_template.html". Ouvrez le "hw_template.html" et mettez-y le code suivant :


Bonjour le monde!!
% si couleur %

Bonjour le monde!!


% autre %

Bonjour le monde!!


% fin si %

Ce code est écrit dans une syntaxe que « Jinja2 » comprend. Vous pouvez vous référer à la documentation « Jinja2 » disponible ici. Le balisage du modèle vérifie si une variable nommée "couleur" lui a été transmise ou non. Si oui, alors cela change la couleur du "Hello World!!" message en utilisant la valeur de la variable "color" qui lui est transmise.

Pour passer une variable au modèle "Jinja2", vous devez écrire le code au format suivant :

@app.route('/')
def hello_world_app() :
return render_template('hw_template.html', color="rouge")

La méthode "render_template" est utilisée pour rendre le balisage à partir d'un fichier de modèle "Jinja2". Vous pouvez lui fournir le nom du modèle que vous souhaitez rendre et tous les arguments que vous souhaitez transmettre au modèle. Le "hw_template.html" utilisé ci-dessus traite une variable "couleur" après que le code Flask lui a passé une variable "couleur" ayant une valeur de "rouge". Après avoir exécuté l'exemple de code mentionné ci-dessus, vous devriez obtenir le résultat suivant :

Vous pouvez également transmettre des valeurs variables à partir d'une URL elle-même. Jetez un œil à l'exemple de code ci-dessous :

@app.route('/')
@app.route('/')
def hello_world_app(color="blue") :
return render_template('hw_template.html', couleur=couleur)

Deux chemins d'URL ou routes sont attachés à la fonction "hello_world_app". Lorsque vous visitez le domaine racine (exemple « app.com"), vous verrez le message "Hello World!!" en bleu car la valeur par défaut de la variable "color" est définie comme "bleu" et c'est également la valeur que vous transmettez au modèle "Jinja2".

Le deuxième chemin défini par « @app.route('/')" utilise une syntaxe spéciale. Dans les symboles "<>", vous pouvez définir toutes les variables à transmettre à la fonction "hello_world_app". La valeur par défaut de cette variable est définie comme argument de la fonction "hello_word_app". Vous passez ensuite votre propre variable personnalisée en tant qu'argument à la méthode "render_template" et définissez sa valeur sur la variable que vous avez définie tout en décorant la fonction avec une nouvelle route personnalisée.

Par exemple, "Bonjour le monde !!Le message deviendra rouge lorsque vous visiterez l'application.com/red" URL mais il restera bleu lorsque vous visiterez "app.com" URL. Voici une comparaison côte à côte :

Conclusion

Flask est un puissant cadre de développement d'applications Web qui peut être utilisé pour créer des applications simples et avancées. Ce tutoriel explique principalement la création d'un simple "Hello World!!” application. Vous pouvez le connecter à une base de données et utiliser des extensions pour étendre davantage ses fonctionnalités. Reportez-vous à la documentation Flask pour en savoir plus sur la gestion des bases de données et des extensions.

Remappez les boutons de votre souris différemment pour différents logiciels avec X-Mouse Button Control
Peut-être que vous avez besoin d'un outil qui pourrait faire changer le contrôle de votre souris avec chaque application que vous utilisez. Si tel est...
Examen de la souris sans fil Microsoft Sculpt Touch
J'ai lu récemment sur le Microsoft Sculpt Touch souris sans fil et j'ai décidé de l'acheter. Après l'avoir utilisé pendant un certain temps, j'ai déci...
Trackpad et pointeur de souris à l'écran AppyMouse pour tablettes Windows
Les utilisateurs de tablettes ratent souvent le pointeur de la souris, surtout lorsqu'ils ont l'habitude d'utiliser les ordinateurs portables. Les sma...