Quickstarters
CRUD Samples
Comment développer une application CRUD avec Flask ?
33 min
aperçu ce tutoriel vous guidera à travers la création d'une application crud (créer, lire, mettre à jour, supprimer) en utilisant flask nous allons intégrer back4app comme notre service backend pour simplifier la gestion des données vous apprendrez à configurer un projet back4app, à concevoir une structure de données flexible et à mettre en œuvre des fonctionnalités crud en utilisant flask dans ce guide, vous allez d'abord créer un projet back4app nommé basic crud app flask qui offre une solution de stockage de données robuste et non relationnelle vous définirez votre schéma de données avec des classes et des champs soit manuellement, soit en utilisant l'agent ia de back4app après avoir configuré votre backend avec l'interface d'administration de back4app, vous connecterez votre application flask au service via des appels api rest ce tutoriel couvre également la gestion de l'accès sécurisé à vos données à la fin, vous aurez une application flask prête pour la production capable d'effectuer des opérations crud ainsi qu'une authentification utilisateur sécurisée et une gestion des données ce que vous apprendrez comment créer une application crud basée sur flask avec un backend non relationnel comment structurer votre backend sur back4app et l'intégrer à un projet flask comment utiliser l'interface d'administration de back4app pour gérer les opérations crud sans effort comment déployer votre application flask, y compris l'utilisation de docker pour la conteneurisation prérequis avant de commencer, assurez vous d'avoir un compte back4app avec un projet configuré besoin d'aide ? consultez commencer avec back4app https //www back4app com/docs/get started/new parse app un environnement de développement python configuré utilisez un éditeur comme vscode ou pycharm et installez python 3 8 (ou plus récent) connaissances de base en python, flask et api rest consultez la documentation python https //docs python org/3/ si nécessaire étape 1 – configuration initiale du projet création de votre projet back4app connectez vous à votre compte back4app cliquez sur “nouvelle application” depuis votre tableau de bord entrez le nom du projet basic crud app flask et complétez le processus de configuration créer un nouveau projet après la création, votre projet apparaît sur le tableau de bord, servant de base pour votre configuration backend étape 2 – construction du schéma de données définir vos structures de données pour cette application, vous allez établir plusieurs classes dans votre projet back4app ci dessous, des exemples des classes principales et de leurs champs essentiels pour les opérations crud 1\ classe des articles champ type description id identifiant d'objet identifiant unique généré automatiquement titre chaîne le nom ou le titre de l'élément description chaîne un bref aperçu de l'article créé à date horodatage lorsque l'élément a été créé mis à jour le date horodatage de la dernière mise à jour 2\ classe des utilisateurs champ type description id identifiant d'objet identifiant unique généré automatiquement nom d'utilisateur chaîne nom d'utilisateur unique pour l'utilisateur email chaîne adresse e mail unique hashdemotdepasse chaîne mot de passe haché de manière sécurisée pour l'authentification créé à date horodatage de la création du compte utilisateur mis à jour le date horodatage de la dernière mise à jour du compte vous pouvez créer ces classes et ajouter des champs directement dans votre tableau de bord back4app créer une nouvelle classe vous pouvez ajouter des colonnes en choisissant un type de données, en nommant le champ, en définissant des valeurs par défaut et en le marquant comme requis créer une colonne utiliser l'agent ia de back4app pour la création de schémas l'agent ia dans votre tableau de bord peut établir automatiquement le schéma en fonction de vos instructions cet outil simplifie le processus et garantit que votre modèle de données est optimal pour les tâches crud comment utiliser l'agent ia ouvrir l'agent ia connectez vous à votre tableau de bord back4app et localisez l'agent ia sous les paramètres du projet décrire votre schéma fournissez une invite détaillée énumérant les classes et les champs confirmer la configuration examinez le schéma proposé et approuvez les modifications exemple d'invite create the following classes in my back4app project 1\) class items \ fields \ id objectid (auto generated) \ title string \ description string \ createdat date (auto generated) \ updatedat date (auto updated) 2\) class users \ fields \ id objectid (auto generated) \ username string (unique) \ email string (unique) \ passwordhash string \ createdat date (auto generated) \ updatedat date (auto updated) ce processus piloté par l'ia fait gagner du temps et garantit un modèle de données cohérent et efficace étape 3 – activation de l'interface admin et gestion des opérations crud aperçu de l'interface admin l'interface admin de back4app fournit une solution sans code pour gérer vos données backend avec ses fonctionnalités de glisser déposer, vous pouvez facilement effectuer des opérations crud, telles que l'ajout, la modification ou la suppression d'enregistrements activation de l'interface admin allez dans le menu “plus” sur votre tableau de bord back4app sélectionnez “admin app” et cliquez sur “activer l'admin app ” créez votre compte admin, ce qui configure également les rôles initiaux comme b4aadminuser activer l'admin app après activation, connectez vous à l'interface admin pour gérer les données de votre projet tableau de bord de l'admin app utilisation de l'interface admin pour crud dans l'interface admin, vous pouvez insérer de nouvelles entrées cliquez sur “ajouter un enregistrement” dans une classe (par exemple, articles) pour créer de nouvelles données voir et modifier les entrées sélectionnez un enregistrement pour voir les détails ou mettre à jour les champs supprimer des enregistrements supprimez les entrées qui ne sont plus nécessaires cette interface facile à utiliser améliore la productivité en rationalisant la gestion du backend étape 4 – connecter votre application flask à back4app avec votre backend configuré, l'étape suivante consiste à lier votre application flask à back4app effectuer des appels api depuis flask puisqu'il n'existe pas de sdk parse dédié pour flask, vous utiliserez des appels api rest dans votre application flask, vous pouvez utiliser la requests bibliothèque pour effectuer des opérations crud exemple configuration de la communication api installer la bibliothèque requests exécutez la commande suivante dans votre terminal pip install requests configurer un module python pour les appels api créez un fichier appelé back4app api py # back4app api py import requests application id = "your application id" rest api key = "your rest api key" base url = "https //parseapi back4app com/classes" headers = { "x parse application id" application id, "x parse rest api key" rest api key, "content type" "application/json" } def get items() response = requests get(f"{base url}/items", headers=headers) return response json() def create item(title, description) data = {"title" title, "description" description} response = requests post(f"{base url}/items", headers=headers, json=data) return response json() def update item(object id, title, description) data = {"title" title, "description" description} response = requests put(f"{base url}/items/{object id}", headers=headers, json=data) return response json() def delete item(object id) response = requests delete(f"{base url}/items/{object id}", headers=headers) return response json() intégrer les fonctions api dans vos routes flask par exemple, dans app py # app py from flask import flask, request, jsonify, render template from back4app api import get items, create item, update item, delete item app = flask( name ) @app route("/") def index() items = get items() return render template("index html", items=items get("results", \[])) @app route("/add", methods=\["post"]) def add item() title = request form get("title") description = request form get("description") result = create item(title, description) return jsonify(result) @app route("/update/\<item id>", methods=\["put"]) def modify item(item id) data = request get json() result = update item(item id, data get("title"), data get("description")) return jsonify(result) @app route("/delete/\<item id>", methods=\["delete"]) def remove item(item id) result = delete item(item id) return jsonify(result) if name == " main " app run(debug=true) cet exemple illustre comment utiliser des appels rest dans flask pour interagir avec votre backend back4app étape 5 – protéger votre backend mise en œuvre des contrôles d'accès protégez vos données en configurant des contrôles d'accès par exemple, lors de la création d'un nouvel élément, vous pourriez restreindre l'accès à son créateur voici un exemple utilisant des appels api avec un accès contrôlé import requests def create private item(title, description, user token) data = {"title" title, "description" description} headers = { "x parse application id" "your application id", "x parse rest api key" "your rest api key", "x parse session token" user token, "content type" "application/json" } response = requests post("https //parseapi back4app com/classes/items", headers=headers, json=data) return response json() configuration des autorisations au niveau de la classe ajustez les autorisations au niveau de la classe (clp) directement dans le tableau de bord back4app pour garantir que seuls les utilisateurs authentifiés peuvent accéder à des classes spécifiques étape 6 – mise en œuvre de l'authentification des utilisateurs configuration de la gestion des utilisateurs back4app offre une gestion des utilisateurs intégrée via sa classe utilisateurs dans votre application flask, vous pouvez créer des points de terminaison pour l'inscription et la connexion exemple inscription et connexion des utilisateurs \# auth py import requests application id = "your application id" rest api key = "your rest api key" headers = { "x parse application id" application id, "x parse rest api key" rest api key, "content type" "application/json" } def register user(username, password, email) data = {"username" username, "password" password, "email" email} response = requests post("https //parseapi back4app com/users", headers=headers, json=data) return response json() def login user(username, password) params = {"username" username, "password" password} response = requests get("https //parseapi back4app com/login", headers=headers, params=params) return response json() vous pouvez créer des routes flask correspondantes pour gérer l'enregistrement et la connexion des utilisateurs en utilisant ces fonctions étape 7 – déployer votre application flask back4app simplifie le déploiement vous pouvez déployer votre application flask via plusieurs méthodes, y compris docker 7 1 emballer votre application flask préparez votre application assurez vous que tous les fichiers et dépendances requis sont inclus testez localement exécutez votre application localement avec flask run 7 2 organiser la structure de votre projet une structure typique pourrait être basic crud app flask/ \| app py \| back4app api py \| auth py \| templates/ \| | index html \| static/ \| requirements txt \| dockerfile 7 3 conteneuriser avec docker incluez un dockerfile à la racine du projet \# use a lightweight python image from python 3 9 slim \# set the working directory workdir /app \# install dependencies copy requirements txt run pip install no cache dir r requirements txt \# copy the application code copy \# expose the port flask runs on expose 5000 \# start the flask app cmd \["python", "app py"] 7 4 déploiement via le déploiement web back4app connectez votre dépôt github assurez vous que votre code est poussé sur github configurer les paramètres de déploiement dans le tableau de bord back4app, utilisez la fonctionnalité de déploiement web pour lier votre dépôt (par exemple, basic crud app flask ) et sélectionnez votre branche définir les commandes de construction spécifiez la commande de construction (par exemple, pip install r requirements txt ) et l'emplacement de votre application déployer cliquez sur déployer et surveillez les journaux jusqu'à ce que votre application soit en ligne étape 8 – conclusion et orientations futures bravo ! vous avez réussi à créer une application crud basée sur flask intégrée à back4app vous avez établi un projet nommé basic crud app flask , défini des modèles de données pour les articles et les utilisateurs, et géré votre backend via l'interface d'administration de back4app de plus, vous avez connecté votre application flask en utilisant des appels d'api rest et mis en œuvre des mesures de sécurité quelle est la suite ? étendre la fonctionnalité envisagez d'ajouter des fonctionnalités telles que la recherche avancée, des vues détaillées des articles ou des mises à jour en temps réel améliorer les services backend explorez les fonctions cloud, intégrez des api tierces ou mettez en œuvre un contrôle d'accès basé sur les rôles approfondir vos compétences visitez la documentation de back4app https //www back4app com/docs et d'autres ressources pour affiner davantage votre application bonne programmation et bonne chance avec votre application crud flask !