Flask 蓝图与CBV
Flask蓝图 Blueprint
- Blueprint,类似普通的Flask实例,不能被run的Flask实例,不存在config
-
创建蓝图bp_users.py文件,名字可以更改
from flask import Blueprint bp = Blueprint('bp01', __name__,url_prefix='url前缀') # 'bp01'第一个参数是唯一标识,整个环境不能重复! url_prefix='url前缀',当存在多个蓝图url冲突时,在地址栏输入'url前缀',就可以访问指定的蓝图文件 @bp.route('/user',endpoint='user') def user(): return '我是蓝图函数01'
-
建立关系
# 在项目的app.run文件中 from app01 import bp #导入蓝图 app.register_blueprint(bp) # 注册蓝图
-
访问指定路径
-
在蓝图中反向解析时,需要注意书写格式:
url = url_for('蓝图标识.装饰器别名')
-
1.11CBV
-
基本格式
from flask import view,Flask app = Flask(__name__) class Login(views.MethodView): #继承MethodView,使类变成视图函数 def get(self,*args,**kwargs): pass def post(self,*args,**kwargs): pass app.add.url_rule('/login', endpoint='login', # 如果endpoint不定义的话名称就是view_func的name,必须唯一 view_func=Login.as_view(name='loginlogin'), # name就是就是view_func的名称 ) app.run()