[PYTHON] Notes et manuels de référence lors de la création de services Web avec Flask

WIP

introduction

J'écris souvent des serveurs Web en utilisant Flask, je vais donc résumer les pages auxquelles je me réfère souvent. Je pense que ce sera une collection de liens pour le moment, mais si j'ai le temps, j'aimerais ajouter plus de contenu. (Il est temps d'utiliser FastAPI)

Environnement principal

Autour du flacon

session

Session de navigateur

En flacon de vanille sans bouchons

server session Vous devez installer un plug-in. Les options de backend pour l'enregistrement des sessions incluent Redis, d'autres NoSQL, FileSystem, SQL, etc.

En tant que plug-in célèbre

etc. FLask-Session accède au backend qui contient la session depuis Flask, mais Beamer fonctionne comme le middleware du WSGI (par exemple, Gunicorn) utilisé. Ce dernier fournit également une fonction Cache. Il a été confirmé que Flask-Session ne fonctionne pas correctement lorsque SQLAlchemy est spécifié comme backend (c'est-à-dire SQL). (À partir de mai 2020.5)

logging Flask et ses plug-ins fournissent souvent une fonction de sortie de journal. Pour capturer le journal de sortie avec la poignée de journal de l'unité principale Flask et le sortir

import logging
from flask.logging import default_handler #Manipulateur de bûches pour corps de flacon
#Autre importation, etc.
from flask_cors import CORS

def create_app():
    # init_Divers traitements tels que l'application
    #Ici, le plug-in que vous souhaitez enregistrer`flask_cors`À
    cors_err_lggr = logger.getLogger('flask_cors')
    #La plupart des plug-ins utilisent le nom de l'enregistreur intégré__name__Est-ce spécifié dans?
    cors_err_lggr.setLever(logging.DEBUG)
    #Ajout du gestionnaire de journaux par défaut
    cors_err_lggr.addHandler(default_handler)
    
    #Autre traitement

    return app

test

Autour de DB (MySQL, SQLAlchemy)

Lors de la définition de colonnes indépendantes (colonnes qui ne sont pas ForeignKey) dans la table intermédiaire de plusieurs: plusieurs, il est préférable d'utiliser ʻassociation_proxy que d'utiliser relation`. Document officiel pour association_proxy, avec exemple d'implémentation

Autour de Nginx, Gunicorn

Autour de Docker

Autour du déploiement

Document officiel C'est comme Capistrano ou Deployer Article explicatif 1 Article explicatif 2

en conclusion

Non, FastAPI N'est-ce pas bon?

Recommended Posts

Notes et manuels de référence lors de la création de services Web avec Flask
Lancer un serveur Web avec Python et Flask
Apprentissage automatique facile avec scikit-learn et flask ✕ Application Web
Analyser et visualiser JSON (application Web ⑤ avec Python + Flask)
Développement d'applications Web avec Flask
Application Web avec Python + Flask ② ③
Application Web avec Python + Flask ④
Créer une application Web avec Flask ②
Créer un serveur Flask avec Docker
Authentification de base, authentification Digest avec Flask
Créer une application Web avec Flask ①
Créer une application Web avec Flask ③
Créer une application Web avec Flask ④
Réputation des livres Python et des livres de référence
[GCP] Procédure de création d'une application Web avec Cloud Functions (Python + Flask)
Grattage WEB avec Python (pour mémo personnel)
[Python] Utiliser et et ou lors de la création de variables
Remarques lors de la création d'un environnement avec python
POSTER diversement avec Python et recevoir avec Flask
Créez une application Web simple avec Flask
Application Web facile avec Python + Flask + Heroku
Créer un service Web avec Docker + Flask
Pratiquer le web scraping avec Python et Selenium
Scraping Web facile avec Python et Ruby
Essayez de créer une application Web avec Vue.js et Django (édition Mac) - (1) Construction d'environnement, création d'application