首页 > 其他分享 >flask-蓝图blueprint按功能块分开

flask-蓝图blueprint按功能块分开

时间:2023-03-19 12:35:36浏览次数:29  
标签:blueprint __ flask demo app py bp template 功能块

随着业务逻辑 的增多.视图函数不能都直接写在flask入口文件app.py中
需要按功能块将视图函数分别写到blueprint目录下单独的py文件中.
然后在app.py中对每个Blueprint对象进行注册.

# app.py
from blueprints.demo import bp as demobp
from blueprints.auth import bp as authbp
from blueprints.qa import bp as qabp

app=Flask(__name__)
app.register_blueprint(demobp)  #绑定
app.register_blueprint(authbp)
app.register_blueprint(qabp)

视图函数按功能拆分到单独文件中
# blueprints/demo.py
from flask import  Blueprint,render_template
bp = Blueprint('demo', __name__, url_prefix='/demo') #

@bp.route('/')
def curr_demo():
    session['uname']='Yancy'
    return render_template('template-demo2.html')
....

http://127.0.0.1:5000/demo/

# blueprints/auth.py
from flask import  Blueprint,render_template
bp = Blueprint('auth', __name__, url_prefix='/auth')

@bp.route('/login')
def login():
    return render_template('login.html')

@bp.route('/resigter')
def register():
	return render_template('register.html')
....

http://127.0.0.1:5000/auth/login

标签:blueprint,__,flask,demo,app,py,bp,template,功能块
From: https://www.cnblogs.com/unity-yancy/p/17232819.html

相关文章

  • flask-配置并连接数据库
    配置mysql驱动用pymysqlHOST='127.0.0.1'PORT=3306USERNAME='zhang3abc'PASSWORD='123456'DB='sitebbsdb'SQLALCHEMY_DATABASE_URI=f'mysql+pymysql://{USERNAME}......
  • Flask
    Prerequisite之前学过Flask【PythonWeb开发(入门)】,也用它在实习公司做过项目,但久不用就忘了,现在回来随便补补参考官方网站:Flask官网参考文章:Flask-SQLAlchemy详解......
  • flask-数据库
    mysql安装:centos服务器安装mariadbyum-ymariadb-serverwin开发机直接安装绿色免安装版mysql.搭配HeidiSQL,如果需要远程连接服务器上数据库用xshell驱动安装f......
  • flask-宏的用法macro
    宏---类似函数macro-demo.html<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>宏定制</title></head><body><h3>JinJa模板宏用法:(......
  • Python Flask JinJa2 语法介绍与示例讲解
    目录一、概述二、JinJa2语法介绍与示例讲解1)变量2)控制结构3)循环结构4)宏5)过滤器6)继承7)包含一、概述Flask是一个轻量级的PythonWeb框架,支持Jinja2模板引擎。Jinja2是一个......
  • flask-页面模板渲染JinJa2
    flask用render_template()函数渲染前端页面fromflaskimportFlask,render_templateapp=Flask(__name__)@app.route('/')defindex():returnrender_templa......
  • flask-快捷路由装饰器
    快捷路由装饰器等价于app.get('/login')app.route('/login',methods=['GET'])app.post('/login')app.route('/login'),methods=['POST'app.put('/login')......
  • flask-migrate插件使用
    安装pipinstallflask-migrate代码exts.pyfromflask_sqlalchemyimportSQLAlchemyfromflask_migrateimportMigratedb=SQLAlchemy()#创建数据库连接......
  • 【项目实战】基于Python+Flask+MySQL的在线笔记管理系统
    1、项目说明基于python+Flask+mysql的在线笔记管理系统项目实战项目需要安装pycharm专业版,mysql数据库以及项目所需的所有模块创建数据库名称db_online_notes,然后执行sq......
  • Flask
    pipinstallvirtualenv安装virtualenvvirtualenvvenv(指定script路径下)创建虚拟环境deactivate退出虚拟环境venv\scripts\activate.bat进入虚拟环境目录,pipinsta......