Maison  >  Article  >  développement back-end  >  Flask-Admin et SQLAlchemy : meilleures pratiques pour créer des systèmes backend de gestion en Python

Flask-Admin et SQLAlchemy : meilleures pratiques pour créer des systèmes backend de gestion en Python

WBOY
WBOYoriginal
2023-06-17 19:17:091669parcourir

Avec le développement d'Internet, de plus en plus d'entreprises commencent à se concentrer sur la construction de systèmes backend de gestion. Le système backend de gestion peut aider les entreprises à gérer diverses données commerciales et configurations système complexes, et à améliorer l'efficacité opérationnelle des entreprises. Python est un langage de programmation populaire très adapté au développement et à la gestion de systèmes back-end. En Python, Flask-Admin et SQLAlchemy sont deux outils très importants. Ensemble, ils peuvent créer un excellent système backend de gestion.

Flask-Admin, en tant qu'extension basée sur le framework Flask, peut rapidement créer un système backend de gestion complet. Pendant ce temps, SQLAlchemy est un framework Python ORM qui simplifie grandement l'interaction avec les bases de données. Cet article expliquera comment utiliser Flask-Admin et SQLAlchemy pour créer un système backend de gestion et fournira les meilleures pratiques pour référence aux lecteurs.

Tout d’abord, nous devons installer les bibliothèques dépendantes requises. Flask-Admin et SQLAlchemy peuvent être installés via la commande pip install. Une fois l'installation terminée, nous pouvons commencer à écrire du code.

Dans le processus d'utilisation de Flask-Admin et SQLAlchemy, nous devons suivre les étapes suivantes :

  1. Créer une application Flask
  2. Initialiser SQLAlchemy
  3. Créer un modèle de base de données
  4. Créer une vue Flask-Admin

Ci-dessous , nous le ferons. Ces étapes sont expliquées une par une.

Créer une application Flask

Tout d'abord, nous devons créer une application Flask. Dans cette application, nous devons effectuer de nombreuses configurations Flask courantes, telles que les connexions à la base de données, les fichiers statiques et les chemins de modèles, etc. Voici des informations de configuration courantes de l'application Flask :

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_admin import Admin

app = Flask(__name__)
app.config['SECRET_KEY'] = 'supersecretkey'
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///mydatabase.db'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False

db = SQLAlchemy(app)

admin = Admin(app, name='My Admin', template_mode='bootstrap3')

Dans cet exemple, nous avons créé une application Flask et l'avons configurée avec SECRET_KEY, les informations de connexion à la base de données et les informations de configuration Flask-Admin. Parmi eux, SUPER_SECRET_KEY doit être remplacé par une vraie clé pour assurer la sécurité du programme. De plus, nous avons également utilisé la bibliothèque SQLAlchemy pour initialiser la base de données et la bibliothèque flask_admin pour créer l'arrière-plan de gestion. C'est la première étape que nous voulons faire.

Initialiser SQLAlchemy

Ensuite, nous devons initialiser la base de données à l'aide de SQLAlchemy. Tout d’abord, nous devons définir un modèle de base de données. Voici un modèle simple :

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(80), unique=True, nullable=False)
    email = db.Column(db.String(120), unique=True, nullable=False)

    def __repr__(self):
        return '<User %r>' % self.username

Dans ce modèle, nous définissons un modèle d'utilisateur, comprenant l'identifiant, le nom d'utilisateur et l'adresse email. Nous utilisons la méthode repr pour définir le format de sortie de l'utilisateur. D'autres champs peuvent être ajoutés ici en fonction des besoins réels.

Créer une vue Flask-Admin

En définissant le modèle, nous avons mappé le modèle à la base de données. Ensuite, nous devons utiliser Flask-Admin pour créer la page backend de gestion.

from flask_admin.contrib.sqla import ModelView

admin.add_view(ModelView(User, db.session))

Dans cet exemple, nous utilisons la classe ModelView de Flask-Admin pour créer une page d'administration contenant un modèle utilisateur et l'ajouter à l'objet Flask-Admin que nous avons initialisé précédemment. Sur cette page, nous pouvons facilement créer, modifier et supprimer des utilisateurs sans écrire beaucoup de code.

Meilleures pratiques

Nous avons introduit les informations de configuration de base, mais lors de la création du système backend de gestion, vous devez également prêter attention aux meilleures pratiques suivantes.

  1. Sécurité des mots de passe

Cela peut paraître évident, mais la sécurité des mots de passe doit être prise au sérieux. La sécurité des mots de passe doit être assurée grâce à des stratégies telles que le salage et le cryptage lors de la création d'utilisateurs.

  1. Vérification de connexion

Le système backend de gestion exposera une grande quantité de données sensibles, un mécanisme de vérification de connexion doit donc être mis en œuvre. Flask fournit la bibliothèque Flask-Login pour gérer la connexion et l'authentification des utilisateurs, ce qui peut grandement simplifier ce processus.

  1. Embellissement des modèles

Flask-Admin fournit un ensemble de modèles par défaut, mais cela ne signifie pas que nous ne pouvons pas les personnaliser. En modifiant les fichiers CSS et JavaScript, vous pouvez personnaliser l'apparence de votre page pour mieux correspondre à votre image et à votre style de marque.

Résumé

L'utilisation de Flask-Admin et de SQLAlchemy peut rapidement créer un puissant système backend de gestion. Ce système peut être utilisé pour gérer diverses données commerciales complexes et configurations système, ce qui peut considérablement améliorer l'efficacité opérationnelle des entreprises. En suivant les meilleures pratiques décrites dans cet article, nous pouvons garantir la sécurité, la stabilité et la facilité d'utilisation de nos systèmes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn