


Detailliertes Beispiel für die Anpassung der Organisationsstruktur (Python)
Die Geburt einer flaschenbasierten Webanwendung ist der siebte Artikel, der hauptsächlich die Anpassung der Organisationsstruktur vorstellt und einen gewissen Referenzwert hat.
Alle Py-Codes sind Alles in der Datei default.py geschrieben. Sobald das Programm verantwortlich ist, verursacht es natürlich viele Probleme sowohl bei der Entwicklung als auch bei der Wartung.
Das Flask-Framework zwingt Projekte nicht dazu, eine bestimmte Organisationsstruktur zu verwenden, daher ist die hier verwendete Organisationsstruktur nicht unbedingt dieselbe wie in anderen Projekten.
Gemäß dem Code in default.py kann es grob in drei Kategorien unterteilt werden: Formularmodell, Datenmodell und Ansichtsmethode, sodass Modelle auch dadurch unterschieden werden Kategorie. Daher ist nach den Erfahrungen aus anderen Sprachen (Java) jede Klasse eine Py-Datei und wird im entsprechenden Ordner abgelegt
In einer einzigen Datei, Alle Konfigurationen werden alle in eine einzige Datei geschrieben, und nach der Rekonstruktion mehrerer Dateien ist dies offensichtlich unangemessen, daher ist es notwendig, eine unabhängige Konfigurationsdatei zu erstellen:
class Config: SECRET_KEY="Niu_blog String" SQLALCHEMY_DATABASE_URI='mysql://root:1234@localhost/cblog' SQLALCHEMY_COMMIT_ON_TEARDOWN=True LOGIN_PROTECTION="strong" LOGIN_VIEW="login"
Dann initialisieren Sie die Datei (App /__init__.py):
from flask import Flask from flask_bootstrap import Bootstrap from flask_sqlalchemy import SQLAlchemy from flask_login import LoginManager import pymysql pymysql.install_as_MySQLdb() from config import Config bootstrap = Bootstrap() db = SQLAlchemy() login_manager=LoginManager(); def create_app(): app = Flask(__name__) app.config.from_object(Config) bootstrap.init_app(app) login_manager.init_app(app) login_manager.session_protection=Config.LOGIN_PROTECTION login_manager.login_view=Config.LOGIN_VIEW db.init_app(app) return app
Eine weitere Modularisierung erfordert die Verwendung von Blueprints. Die Funktionen von Blueprints ähneln in gewisser Weise den Bereichen in asp.net mvc und integrieren die Ansichtsmethoden verschiedener Module URL, zuerst wird der Eingang, also die Indexseite, als Hauptblaupause definiert. Die Methode ist wie folgt:
Erstellen Sie den Hauptordner
-
Erstellen Sie einen neuen Ordner in der Blueprint-Initialisierungsdatei __init__.py
Ansichtsmethodendatei view.py erstellen
Fehlerseitenansichtsmethode erstellen Fehler.py< im Hauptentwurf 🎜>
from flask import Blueprint main=Blueprint("main",__name__) # 创建蓝本 from . import errors,views
from flask import render_template from . import main @main.route("/") def index(): return render_template("index.html",site_name='myblog')
from flask import Blueprint auth=Blueprint("auth",__name__) from . import views
from . import auth from .. import db,login_manager from ..forms.LoginForm import LoginForm(*) from ..models.User import User (*) from flask_login import login_user,logout_user from flask import render_template,flash,redirect,url_for @auth.route("/login",methods=["GET","POST"]) def login(): form = LoginForm() print(url_for("main.index")) if form.validate_on_submit(): username = form.username.data password = form.password.data print(User) user = User.query.filter_by(username=username, password=password).first() if user is not None: login_user(user, form.remember_me.data) print(url_for("main.index")) return redirect(url_for("main.index")) else: flash("您输入的用户名或密码错误") return render_template("/auth/login.html", form=form) # 返回的仍为登录页 return redirect(url_for("main.index")) return render_template("/auth/login.html",form=form) @auth.route("/logout",methods=["GET","POST"]) def logout(): logout_user() return redirect(url_for("main.index")) @login_manager.user_loader def load_user(user_id): return User.query.get(int(user_id))
Der Code in der LoginForm-Datei lautet wie folgt :
from flask_wtf import FlaskForm from wtforms import StringField,PasswordField,SubmitField,BooleanField from wtforms.validators import DataRequired class LoginForm(FlaskForm): username=StringField("请输入用户名",validators=[DataRequired()]) password=PasswordField("请输入密码") remember_me=BooleanField("记住我") submit=SubmitField("登录")
from flask_login import UserMixin from .. import db class User(UserMixin,db.Model): __tablename__="users" id=db.Column(db.Integer,primary_key=True) username=db.Column(db.String(50),unique=True,index=True) password=db.Column(db.String(50)) nickname=db.Column(db.String(50)) email=db.Column(db.String(100)) birthday=db.Column(db.DateTime) gender=db.Column(db.Integer) remark=db.Column(db.String(200)) role_id=db.Column(db.Integer,db.ForeignKey("roles.id"))
def create_app(): app = Flask(__name__) app.config.from_object(Config) bootstrap.init_app(app) login_manager.init_app(app) login_manager.session_protection=Config.LOGIN_PROTECTION login_manager.login_view=Config.LOGIN_VIEW db.init_app(app) from .main import main as main_blueprint from .auth import auth as auth_blueprint app.register_blueprint(main_blueprint) #无url前缀 app.register_blueprint(auth_blueprint,url_prefix="/auth") #url前缀为/auth return app
from app import create_app, db from flask_script import Manager,Shell from flask_migrate import Migrate,MigrateCommand from app.models.User import User from app.models.Role import Role import pymysql pymysql.install_as_MySQLdb() app=create_app() manager=Manager(app); migrate = Migrate(app, db) def make_shell_context(): return dict(app=app,db=db,User=User,Role=Role) #注册shell命令 manager.add_command("db", MigrateCommand) #新增db命令用于数据库迁移 manager.add_command("shell" ,Shell(make_context=make_shell_context())) if __name__ =='__main__': manager.run()
Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel für die Anpassung der Organisationsstruktur (Python). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



So erstellen Sie mit React und Flask einfache und benutzerfreundliche Webanwendungen. Einführung: Mit der Entwicklung des Internets werden die Anforderungen an Webanwendungen immer vielfältiger und komplexer. Um den Anforderungen der Benutzer an Benutzerfreundlichkeit und Leistung gerecht zu werden, wird es immer wichtiger, moderne Technologie-Stacks zum Aufbau von Netzwerkanwendungen zu verwenden. React und Flask sind zwei sehr beliebte Frameworks für die Front-End- und Back-End-Entwicklung, und sie arbeiten gut zusammen, um einfache und benutzerfreundliche Webanwendungen zu erstellen. In diesem Artikel erfahren Sie, wie Sie React und Flask nutzen

Django und Flask sind beide führend bei Python-Web-Frameworks und haben beide ihre eigenen Vorteile und anwendbaren Szenarien. In diesem Artikel wird eine vergleichende Analyse dieser beiden Frameworks durchgeführt und spezifische Codebeispiele bereitgestellt. Entwicklungseinführung Django ist ein Web-Framework mit vollem Funktionsumfang, dessen Hauptzweck darin besteht, schnell komplexe Webanwendungen zu entwickeln. Django bietet viele integrierte Funktionen wie ORM (Object Relational Mapping), Formulare, Authentifizierung, Verwaltungs-Backend usw. Diese Funktionen ermöglichen es Django, große Mengen zu verarbeiten

Von Grund auf werde ich Ihnen Schritt für Schritt beibringen, wie Sie Flask installieren und schnell einen persönlichen Blog erstellen. Als Person, die gerne schreibt, ist es sehr wichtig, einen persönlichen Blog zu haben. Als leichtes Python-Web-Framework kann Flask uns dabei helfen, schnell ein einfaches und voll funktionsfähiges persönliches Blog zu erstellen. In diesem Artikel fange ich bei Null an und zeige Ihnen Schritt für Schritt, wie Sie Flask installieren und schnell einen persönlichen Blog erstellen. Schritt 1: Python und pip installieren Bevor wir beginnen, müssen wir zuerst Python und pi installieren

Tutorial zur Installation des Flask-Frameworks: Bringen Sie Ihnen Schritt für Schritt bei, wie Sie das Flask-Framework korrekt installieren. Einführung: Flask ist ein einfaches und flexibles Python-Webentwicklungs-Framework. Es ist leicht zu erlernen, benutzerfreundlich und voller leistungsstarker Funktionen. Dieser Artikel führt Sie Schritt für Schritt durch die korrekte Installation des Flask-Frameworks und stellt detaillierte Codebeispiele als Referenz bereit. Schritt 1: Python installieren Bevor Sie das Flask-Framework installieren, müssen Sie zunächst sicherstellen, dass Python auf Ihrem Computer installiert ist. Sie können bei P beginnen

Im ersten Teil werden die grundlegende Flask- und Intellij IDEA-Integration, Projekt- und virtuelle Umgebungseinstellungen, Abhängigkeitsinstallation usw. vorgestellt. Als Nächstes werden wir weitere Tipps zur Entwicklung von Python-Webanwendungen untersuchen, um eine effizientere Arbeitsumgebung aufzubauen: Mit FlaskBlueprints können Sie Ihren Anwendungscode für eine einfachere Verwaltung und Wartung organisieren. Blueprint ist ein Python-Modul, das Pakete erstellt

FlaskvsFastAPI: Die beste Wahl für eine effiziente Entwicklung von WebAPI Einführung: In der modernen Softwareentwicklung ist WebAPI zu einem unverzichtbaren Bestandteil geworden. Sie stellen Daten und Dienste bereit, die die Kommunikation und Interoperabilität zwischen verschiedenen Anwendungen ermöglichen. Bei der Auswahl eines Frameworks für die Entwicklung von WebAPI haben Flask und FastAPI große Aufmerksamkeit erregt. Beide Frameworks erfreuen sich großer Beliebtheit und jedes hat seine eigenen Vorteile. In diesem Artikel werden wir uns Fl ansehen

Flask-Anwendungsbereitstellung: Vergleich von Gunicorn und suWSGI Einführung: Flask ist als leichtes Python-Web-Framework bei vielen Entwicklern beliebt. Bei der Bereitstellung einer Flask-Anwendung in einer Produktionsumgebung ist die Auswahl der geeigneten Server Gateway Interface (SGI) eine entscheidende Entscheidung. Gunicorn und uWSGI sind zwei gängige SGI-Server. In diesem Artikel werden sie ausführlich beschrieben.

Datenanalyse und Datenvisualisierung sind in den letzten Jahren in vielen Branchen und Bereichen zu unverzichtbaren Fähigkeiten geworden. Für Datenanalysten und -forscher ist es sehr wichtig, den Benutzern große Datenmengen zu präsentieren und ihnen durch Visualisierung die Bedeutung und Eigenschaften der Daten verständlich zu machen. Um diesem Bedarf gerecht zu werden, ist es zu einem Trend geworden, D3.js zum Erstellen interaktiver Datenvisualisierungen in Webanwendungen zu verwenden. In diesem Artikel erfahren Sie, wie Sie mit Flask und D3.js interaktive Datenvisualisierungen für das Web erstellen
