flask 蓝图(Blueprint)

文章展示了如何使用Flask框架的Blueprint功能来实现web应用的模块化,包括auth和qa两个模块,分别处理用户认证和问答功能。通过定义蓝图、路由和渲染模板,实现了登录和注册页面,并在app.py中注册蓝图以简化主应用文件。此外,还引入了数据库集成和迁移工具Flask-Migrate。
摘要由CSDN通过智能技术生成

flask 案例

代码

auth.py

from flask import Blueprint, render_template


# /auth
bp = Blueprint("auth", __name__, url_prefix="/auth")


# 也就是前面已经定义好前缀,/auth/login
@bp.route("login")
def login():
    pass


@bp.route("register")
def register():
    return render_template("register.html")


# @bp.route("login")
# def register():
#     return render_template("login.html")

qa.py

from flask import Blueprint

bp = Blueprint("qa", __name__, url_prefix="/")


@bp.route("/")
def index():
    pass


app.py

from flask import Flask
import config
from exts import db
from models import UserModel
# 导入蓝图
from blueprints.qa import bp as qa_bp
from blueprints.auth import bp as auth_bp
from flask_migrate import Migrate


app = Flask(__name__)
app.config.from_object(config)


# 创建app后,再与db 和app绑定
db.init_app(app)

migrate = Migrate(app, db)

# blueprint,用来做模块化的
# 蓝图,视图函数模块化,蓝图


# 注册蓝图,简化app.py中的文件,便于后期维护
app.register_blueprint(qa_bp)
app.register_blueprint(auth_bp)

@app.route('/')
def hello_world():  # put application's code here
    return 'Hello World!'


if __name__ == '__main__':
    app.run()




文件结构

在这里插入图片描述

实例

在这里插入图片描述

参考文章

https://www.bilibili.com/video/BV17r4y1y7jJ
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值