Je suis en train d'étudier le tutoriel de Flask et je suis perdu quant à l'utilisation du contexte de l'application pour se connecter à la base de données. Sur la page, l'auteur dit :
Créer et fermer des connexions à la base de données tout le temps est très inefficace, donc vous aurez besoin de les garder plus longtemps. Parce que les connexions à la base de données encapsulent une transaction, vous devrez vous assurer qu'une seule requête utilise la connexion à la fois.
Cependant, il semble que créer et fermer la connexion est exactement ce que réalise le code. Nous avons une vue get_db
qui se connecte à la base de données, retourne un objet de connexion et l'ajoute au contexte de l'application s'il n'est pas présent. Nous avons également une vue close_db
qui ferme l'objet de connexion lorsque le contexte de l'application est démonté.
Ma compréhension de ce qui se passe ici est la suivante : Un utilisateur se connecte à la page d'accueil de l'application, établit une connexion avec la base de données puis la ferme. Chaque fois que l'utilisateur fait une requête à la page (par exemple, poster une nouvelle entrée de blog), une nouvelle connexion est établie avec la base de données puis fermée lorsque la requête est terminée. Alors quelle est la valeur d'utiliser le contexte de l'application ? Pourquoi ne pas simplement créer et fermer une connexion pour chaque requête directement ?
Peut-être que je ne comprends pas quelque chose ici - toute aide est appréciée !