藍圖的目的是實現 各個模塊的視圖函數寫在不同的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'