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 la rédaction 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 échantillons 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 cadre de développement d'applications Web basé sur Python qui est spécialement conçu pour être minime pour vous aider à démarrer. Cela aide à 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 cadre «micro» car il laisse toutes les décisions majeures aux utilisateurs eux-mêmes et décide peu de leur nom. Les utilisateurs peuvent choisir leurs propres moteurs de modèle, bibliothèques de gestion de base de données, outils de validation de formulaire, etc., bien que Flask soit livré avec des défauts sains d'esprit.

Installation de flacon en 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 package «PIP» en exécutant les deux commandes successives:

$ sudo apt installer python3-Pip
$ PIP3 Installer Flask

Si vous utilisez une autre distribution Linux, recherchez des 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 FLASK en utilisant la commande spécifiée ci-dessous:

$ Python3 -C "Importer Flask; Imprimer (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 cadres de développement d'applications Web dans Python et d'autres langages de programmation utilisent l'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» fait ici référence à un navigateur Web ou à toute autre application qui permet le rendu de pages Web à l'aide de technologies HTML, JavaScript et CSS. Tandis que le «serveur» fait référence à un serveur local ou distant où votre application Flask écrite en langue 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 sortira une URL locale 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 un code HTML, JavaScript et CSS côté côté client nécessaire pour votre application Web en utilisant le code côté serveur écrit en Flask et Python. Mais une fois l'application Web déployée et que vous l'exécutez dans un navigateur Web, votre application Web ne verra pas ou ne comprendra pas le code Python. Il traitera HTML, JavaScript et CSS uniquement car seules ces technologies sont principalement prises en charge par les navigateurs Web. Vous pourrez toujours communiquer avec le serveur du côté client en utilisant les demandes HTTP. Vous pouvez beaucoup transmettre des données du client vers le serveur, le traiter à l'aide d'une logique côté serveur et renvoyer le résultat.

Donc, 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 en cas de cas.

Application World Simple Hello

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

De Flask Import Flask
app = flacon (__ name__)
@app.itinéraire('/')
def hello_world_app ():
Message = "Hello World!!"
retour du message

La première instruction de l'échantillon 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 comme argument. Si vous utilisez simplement un seul ".Fichier py "sans un" __init__ supplémentaire.Fichier py ”généralement utilisé lors de la création d'une structure de fichiers pour un package Python, le nom aura une valeur codée en dur de" __main__ ". L'argument «__name__» indique à Flask où chercher des fichiers liés à l'application Flask actuelle 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 utilisent «__name__» uniquement et cela semble être une pratique standard.

Ensuite, une application «décoration» «.Route ”est attachée à la fonction" Hello_world_app ". Les fonctions de décoration étendent ou modifient la fonction à laquelle ils sont attachés, sans les changer réellement. Ici, «App.Route »décorateur est utilisé pour spécifier le chemin d'url où la fonction attachée s'exécutera. Le symbole «/» indique à Flask d'exécuter une fonction sur «/» URL, qui signifie Domaine «Root» ou URL «Root». 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 en quelque chose d'autre. Par exemple, en utilisant un décorateur «@app.Route ('/ Helloworld') ", vous pouvez cartographier la fonction à" App.com / helloworld ”URL.

Enfin, la fonction «hello_world_app» est utilisée pour renvoyer le contenu que vous souhaitez afficher dans un navigateur Web lorsque votre application Web s'exécute.

Exécution d'une application Flask

Pour exécuter une application Flask dans Linux, vous devez exécuter une commande dans le format suivant:

$ export flask_app = main.py
$ FLASK RUN

Changer «Main.nom py ”au besoin pour le faire correspondre avec le vôtre .Fichier «py» où vous avez écrit votre code de flacon. La deuxième commande exécute votre application Flask. Vous pouvez également exécuter cette commande alternative:

$ Flask_app = Main.Py Flask Run

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

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

Vous pouvez exécuter l'application FLASK en mode de débogage en utilisant la variable d'environnement «flask_env» dans le format suivant:

$ Flask_env = développement flask_app = main.Py Flask Run

Utilisation du moteur de modèle Jinja2

Flask utilise «Jinja2» pour goûter le moteur pour faciliter l'écriture du code HTML à Python. Vous pouvez l'utiliser pour définir un balisage pour «Hello World!!" message.

Créez un nouveau répertoire appelé «Modèles» où se trouve votre script de ballon principal. À l'intérieur du répertoire «modèle», créez un nouveau fichier nommé «hw_template.html ”. Ouvrez le «HW_TEMPLAT.Fichier HTML »et y mettre 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 modèle de balisage 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 du code au format suivant:

@app.itinéraire('/')
def hello_world_app ():
return render_template ('hw_template.html ', color = "red")

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.Le modèle HTML »utilisé ci-dessus traite une variable« couleur »après que le code du flacon lui a passé une variable« couleur »ayant une valeur de« rouge ». Après avoir exécuté l'échantillon de code mentionné ci-dessus, vous devez obtenir le résultat suivant:

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

@app.itinéraire('/')
@app.itinéraire('/')
def hello_world_app (color = "bleu"):
return render_template ('hw_template.html ', color = couleur)

Deux chemins ou itinéraires d'URL sont attachés à la fonction «hello_world_app». Lorsque vous visitez le domaine racine (exemple «App.com »), vous verrez le« Hello World!!"Message en couleur bleue car la valeur par défaut de la variable" couleur "est définie comme" bleu "et c'est également la valeur que vous passez 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 un argument pour la fonction "Hello_word_App". Vous passez ensuite votre propre variable personnalisée comme argument à la méthode «render_template» et définissez sa valeur sur la variable que vous avez définie lors de la décoration de la fonction avec un nouveau itinéraire personnalisé.

Par exemple, «Hello World !!"Le message passera à la couleur rouge lorsque vous visitez" App.URL com / rouge ”mais il restera bleu lorsque vous visitez« 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 sa fonctionnalité. Reportez-vous à la documentation FLASK pour en savoir plus sur la gestion des bases de données et des extensions.