20200727《Flask进阶》——模块化程序(蓝本)

  • 模块化程序
    • 问题: 对于大型项目,需要将各个功能模块化,有利于组织和改进
    • 思路: 通过蓝本来模块化程序实例,蓝本可以像程序实例一样,可以在蓝本上注册路由、注册错误函数、注册上下文处理函数等等
    • 工具: Blueprint
    • 代码:
# 创建蓝本
from flask import Blueprint
auth_bp = Blueprint('auth', __name__)  # 第一个参数是蓝本名称,第二个参数是包或模块名称,可以使用name变量

# 装配蓝本(可装配视图函数、错误处理函数、请求处理函数、模板上下文处理函数等)
@auth_bp.route()
def login():
    ...

# 注册蓝本
from thirty_man.blueprints.auth import auth_bp

def create_app():

    app = Flask(__name__)

    app.register_blueprint(auth_bp, url_prefix='/auth')  # 参数url_prefix可为蓝本下的视图添加URL前缀,subdomain参数可为蓝本下的子域名添加子路由

# 蓝本的路由端点:蓝本名.视图函数名,例如:
url_for('auth.login')

# 蓝本资源:可以把蓝本模块升级为包,在其中定义单独的static和template文件夹
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值