


Comment utiliser Python pour implémenter la fonction de gestion des utilisateurs du système CMS
Aug 08, 2023 pm 03:03 PMComment utiliser Python pour implémenter la fonction de gestion des utilisateurs du système CMS
Avec le développement rapide d'Internet et des technologies de l'information, les systèmes de gestion de contenu (CMS) sont devenus le c?ur de nombreux sites Web. Un système CMS stable et fiable peut non seulement aider les administrateurs de sites Web à gérer efficacement le contenu, mais également fournir de bonnes fonctions de gestion des utilisateurs. Cet article expliquera comment utiliser Python pour implémenter la fonction de gestion des utilisateurs du système CMS et joindra des exemples de code correspondants.
- Préparation
Avant de commencer, nous devons installer Python et les outils de développement associés. Dans cet article, nous utiliserons le framework Flask pour construire un système CMS, nous devons donc installer Flask et l'outil de gestion de packages pip correspondant à Flask.
$ pip install Flask
- Création d'une application Flask
Tout d'abord, nous devons créer une application Flask de base. Créez un fichier nommé app.py
dans le répertoire racine de l'application et ajoutez le code suivant?: app.py
的文件,并添加以下代碼:
from flask import Flask app = Flask(__name__) @app.route("/") def index(): return "Welcome to CMS system." if __name__ == "__main__": app.run()
上述代碼中,我們創(chuàng)建了一個 Flask 應(yīng)用,并定義了一個主頁的路由 /
,當(dāng)用戶訪問站點(diǎn)主頁時,會返回歡迎信息。
- 添加用戶模型
CMS 系統(tǒng)需要一個用戶模型來存儲用戶的相關(guān)信息。我們可以創(chuàng)建一個 User
類來表示用戶,并將其存儲在數(shù)據(jù)庫中。在應(yīng)用的根目錄下創(chuàng)建一個名為 models.py
的文件,并添加以下代碼:
from flask_sqlalchemy import SQLAlchemy db = SQLAlchemy() class User(db.Model): id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(50), unique=True, nullable=False) password = db.Column(db.String(100), nullable=False) email = db.Column(db.String(120), unique=True, nullable=False) def __repr__(self): return f"<User {self.username}>"
上述代碼中,我們使用了 Flask 擴(kuò)展插件 Flask-SQLAlchemy
來定義數(shù)據(jù)庫模型。User
類包含了用戶的 id、用戶名、密碼和郵箱等字段。
- 設(shè)置數(shù)據(jù)庫連接
在 app.py
文件中,添加以下代碼來配置數(shù)據(jù)庫連接:
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///cms.db" db.init_app(app)
上述代碼中,我們使用 SQLite 數(shù)據(jù)庫作為示例,你可以使用其他數(shù)據(jù)庫,如 MySQL 或 PostgreSQL。
- 創(chuàng)建數(shù)據(jù)庫
在終端中運(yùn)行以下命令來創(chuàng)建數(shù)據(jù)庫:
$ python from app import db db.create_all() exit()
- 創(chuàng)建注冊路由
在 app.py
文件中,添加以下代碼來創(chuàng)建用戶注冊的路由:
from flask import render_template, request, redirect, url_for @app.route("/register", methods=["GET", "POST"]) def register(): if request.method == "POST": username = request.form.get("username") password = request.form.get("password") email = request.form.get("email") user = User(username=username, password=password, email=email) db.session.add(user) db.session.commit() return redirect(url_for("index")) return render_template("register.html")
上述代碼中,我們通過 request.form
獲取用戶注冊表單中的相關(guān)信息,并將用戶信息存儲到數(shù)據(jù)庫中。注冊完成后,應(yīng)用將會跳轉(zhuǎn)到主頁。
- 創(chuàng)建登錄路由
在 app.py
文件中,添加以下代碼來創(chuàng)建用戶登錄的路由:
@app.route("/login", methods=["GET", "POST"]) def login(): if request.method == "POST": username = request.form.get("username") password = request.form.get("password") user = User.query.filter_by(username=username, password=password).first() if user: # 用戶登錄成功 return redirect(url_for("index")) return render_template("login.html")
上述代碼中,我們通過 request.form
獲取用戶登錄表單中的相關(guān)信息,并通過查詢數(shù)據(jù)庫來驗(yàn)證用戶信息。如果驗(yàn)證成功,則跳轉(zhuǎn)到主頁。
- 創(chuàng)建用戶列表路由
在 app.py
文件中,添加以下代碼來創(chuàng)建用戶列表的路由:
@app.route("/users") def users(): all_users = User.query.all() return render_template("users.html", users=all_users)
在這個路由中,我們從數(shù)據(jù)庫中獲取所有用戶,并將它們傳遞給模板文件 users.html
。
- 創(chuàng)建模板文件
在應(yīng)用的根目錄下創(chuàng)建一個名為 templates
的文件夾,并在該文件夾下創(chuàng)建以下模板文件:
register.html
:
<!DOCTYPE html> <html> <head> <title>User Registration</title> </head> <body> <h1>User Registration</h1> <form action="{{ url_for('register') }}" method="post"> <input type="text" name="username" placeholder="Username" required><br><br> <input type="password" name="password" placeholder="Password" required><br><br> <input type="email" name="email" placeholder="Email" required><br><br> <input type="submit" value="Register"> </form> </body> </html>
login.html
:
<!DOCTYPE html> <html> <head> <title>User Login</title> </head> <body> <h1>User Login</h1> <form action="{{ url_for('login') }}" method="post"> <input type="text" name="username" placeholder="Username" required><br><br> <input type="password" name="password" placeholder="Password" required><br><br> <input type="submit" value="Login"> </form> </body> </html>
users.html
:
<!DOCTYPE html> <html> <head> <title>User List</title> </head> <body> <h1>User List</h1> <table> <tr> <th>Username</th> <th>Email</th> </tr> {% for user in users %} <tr> <td>{{ user.username }}</td> <td>{{ user.email }}</td> </tr> {% endfor %} </table> </body> </html>
- 運(yùn)行應(yīng)用
在終端中運(yùn)行以下命令來啟動應(yīng)用:
$ python app.py
現(xiàn)在,你可以通過訪問 http://localhost:5000
rrreee
- Ajouter un modèle utilisateur??????Le système CMS nécessite un modèle utilisateur pour stocker les informations relatives à l'utilisateur. Nous pouvons créer une classe
User
pour représenter l'utilisateur et la stocker dans la base de données. Créez un fichier nommé models.py
dans le répertoire racine de l'application et ajoutez le code suivant : ??rrreee??Dans le code ci-dessus, nous utilisons le plug-in d'extension Flask Flask-SQLAlchemy pour définir le modèle de base de données. La classe <code>Utilisateur
contient des champs tels que l'identifiant de l'utilisateur, le nom d'utilisateur, le mot de passe et l'adresse e-mail. ??- ??Configurer la connexion à la base de données??????Dans le fichier
app.py
, ajoutez le code suivant pour configurer la connexion à la base de données?: ??rrreee??Dans le code ci-dessus, nous utilisons la base de données SQLite. Par exemple, vous pouvez utiliser d'autres bases de données telles que MySQL ou PostgreSQL. ??- ??Créez la base de données ??????Exécutez la commande suivante dans le terminal pour créer la base de données?: ??rrreee
- ??Créez la route d'enregistrement ??????Dans
app.py, ajoutez le code suivant pour créer un itinéraire pour l'enregistrement de l'utilisateur?: ??rrreee??Dans le code ci-dessus, nous obtenons les informations pertinentes dans le formulaire d'enregistrement de l'utilisateur via <code>request.form
et stocker les informations utilisateur dans la base de données. Une fois l’inscription terminée, l’application passera à la page d’accueil. ??- ??Créer une route de connexion??????Dans le fichier
app.py
, ajoutez le code suivant pour créer une route pour la connexion de l'utilisateur?: ??rrreee??Dans le code ci-dessus, nous passons request.form- ??Créer la route de la liste d'utilisateurs ??????Dans le fichier
app.py
, ajoutez le code suivant pour créer la route de la liste d'utilisateurs?: ??rrreee??Dans ce route, nous récupérons tous les utilisateurs de la base de données et les transmettons au fichier modèle users.html
. ??- ??Créez des fichiers modèles??????Créez un dossier nommé
templates
dans le répertoire racine de l'application et créez les fichiers modèles suivants sous le dossier?: ?? - ??
register.html
?: ??- ??
login.html
?: ??- ??
users .html?: ??
- ??Exécutez l'application ??????Exécutez la commande suivante dans le terminal pour démarrer l'application?: ??rrreee??Maintenant, vous pouvez y accéder en visitant
http ://localhost:5000
pour accéder au système CMS et effectuer l'enregistrement des utilisateurs, se connecter et afficher la liste des utilisateurs. ????Cet article explique comment utiliser Python pour implémenter la fonction de gestion des utilisateurs du système CMS et fournit des exemples de code correspondants. Vous pouvez étendre et améliorer ces exemples de codes pour implémenter davantage de fonctions du système CMS. J'espère que cet article pourra vous aider à comprendre et à appliquer Python aux fonctions de gestion des utilisateurs dans le développement de systèmes CMS. ??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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Utilisez le plot conjoint de Seaborn pour visualiser rapidement la relation et la distribution entre deux variables; 2. Le tracé de diffusion de base est implémenté par sn.jointplot (data = pointes, x = "total_bill", y = "Tip", kind = "dispers"), le centre est un tracé de dispersion et l'histogramme est affiché sur les c?tés supérieur et inférieur et droit; 3. Ajouter des lignes de régression et des informations de densité à un kind = "reg" et combiner marginal_kws pour définir le style de tracé de bord; 4. Lorsque le volume de données est important, il est recommandé d'utiliser "Hex"

Les listes de cha?nes peuvent être fusionnées avec la méthode join (), telles que '' .join (mots) pour obtenir "HelloworldFrompython"; 2. Les listes de nombres doivent être converties en cha?nes avec MAP (STR, nombres) ou [STR (x) Forxinnumbers] avant de rejoindre; 3. Toute liste de types peut être directement convertie en cha?nes avec des supports et des devis, adaptées au débogage; 4. Les formats personnalisés peuvent être implémentés par des expressions de générateur combinées avec join (), telles que '|' .join (f "[{item}]" ForIteminitems)

Installez PYODBC: utilisez la commande PiPInstallpyodbc pour installer la bibliothèque; 2. Connectez SQLServer: utilisez la cha?ne de connexion contenant le pilote, le serveur, la base de données, l'UID / PWD ou TrustEd_Connection via la méthode pyoDBC.Connect () et prendre en charge l'authentification SQL ou l'authentification Windows respectivement; 3. Vérifiez le pilote installé: exécutez pyodbc.Drivers () et filtrez le nom du pilote contenant ?SQLServer? pour vous assurer que le nom du pilote correct est utilisé tel que ?ODBCDriver17 pour SQLServer?; 4. Paramètres clés de la cha?ne de connexion

pandas.melt () est utilisé pour convertir les données de format larges en format long. La réponse consiste à définir de nouveaux noms de colonne en spécifiant id_vars conserver la colonne d'identification, Value_Vars Sélectionnez la colonne à fondre, var_name et valeur_name, 1.id_vars = 'name' signifie que la colonne de nom reste inchangée, 2.Value_vars = [Math ',' English ',' Science '. du nom de colonne d'origine, 4.value_name = 'score' définit le nouveau nom de colonne de la valeur d'origine et génère enfin trois colonnes, notamment le nom, le sujet et le score.

PythonCanBeoptimizedFormemory-Boundoperations AdreductoverHeadHroughGenerators, EfficientDatastructures et ManagingObjectliFetimes.first, useGeneratorsInSteadofListStoproceSlargedataseSeItematatime, EvitingLoadingEnteryToMeToMeMory.

Définissez d'abord un formulaire ContactForm contenant le nom, la bo?te aux lettres et les champs de message; 2. De l'avis, la soumission du formulaire est traitée en jugeant la demande de poste, et après la vérification, nettoyée_data est obtenue et la réponse est retournée, sinon le formulaire vide sera rendu; 3. Dans le modèle, utilisez {{form.as_p}} pour rendre le champ et ajouter {% csrf_token%} pour empêcher les attaques CSRF; 4. Configurer le routage d'URL vers Point / Contact / vers la vue Contact_View; Utilisez Modelform pour associer directement le modèle pour obtenir un stockage de données. Djangoforms implémente le traitement intégré de la vérification des données, le rendu HTML et les invites d'erreur, qui convient au développement rapide des fonctions de forme s?re.

L'introduction à l'arbitrage statistique L'arbitrage statistique est une méthode commerciale qui capture l'inadéquation des prix sur le marché financier basé sur des modèles mathématiques. Sa philosophie principale découle de la régression moyenne, c'est-à-dire que les prix des actifs peuvent s'écarter des tendances à long terme à court terme, mais reviendront éventuellement à leur moyenne historique. Les traders utilisent des méthodes statistiques pour analyser la corrélation entre les actifs et rechercher des portefeuilles qui changent généralement de manière synchrone. Lorsque la relation de prix de ces actifs est anormalement déviée, des opportunités d'arbitrage se présentent. Sur le marché des crypto-monnaies, l'arbitrage statistique est particulièrement répandu, principalement en raison de l'inefficacité et des fluctuations drastiques du marché lui-même. Contrairement aux marchés financiers traditionnels, les crypto-monnaies fonctionnent 24h / 24 et leurs prix sont très susceptibles de briser les nouvelles, les sentiments des médias sociaux et les améliorations technologiques. Cette fluctuation des prix constante crée fréquemment un biais de prix et fournit aux arbitrageurs un

Iter () est utilisé pour obtenir l'objet Iterator, et Next () est utilisé pour obtenir l'élément suivant; 1. Utilisez Iterator () pour convertir des objets itérables tels que les listes en itérateurs; 2. Appelez Next () pour obtenir des éléments un par un et déclenchez l'exception de l'arrêt lorsque les éléments sont épuisés; 3. Utilisez Suivant (iterator, par défaut) pour éviter les exceptions; 4. Les itérateurs personnalisés doivent implémenter les méthodes __iter __ () et __Next __ () pour contr?ler la logique d'itération; L'utilisation de valeurs par défaut est un moyen courant de parcourir la traversée et l'ensemble du mécanisme est concis et pratique.
