蓝图的目的是实现 各个模块的视图函数写在不同的py文件当中。
主视图 中 导入 分路由视图的模块,并且注册蓝图对象
分路由视图中 利用 蓝图对象 的route 进行装饰视图函数
主路由视图函数:
1 #coding:utf8
2
3 from flask import Flask 4 from login_demo import login # 从分路由倒入路由函数
5 from register_demo import register 6 app = Flask(__name__) 7
8
9 # 注册蓝图 第一个参数 是蓝图对象
10 app.register_blueprint(login) 11 app.register_blueprint(register) 12
13 @app.route('/') 14 def hello_world(): 15 return 'Hello World!'
16
17
18 if __name__ == '__main__': 19 print( app.url_map ) 20 app.run()
分路由:
login_demo.py
1 #coding:utf8
2
3 from flask import Blueprint , render_template 4
5 # 创建蓝图 第一个参数为蓝图的名字
6 login = Blueprint('login',__name__) 7
8 @login.route('/login') 9 def login_demo(): 10 return 'login'
register_demo.py
1 from flask import Blueprint 2
3 register = Blueprint('register',__name__) 4
5
6 @register.route('/register') 7 def reg(): 8 return 'register'