下面經過在PyCharm開發工具中建立一個簡單的Flask項目來體會一下Flask的藍圖構建(Blueprint)。flask
何謂藍圖:在Flask中藍圖就在大型應用中,將不一樣功能的模塊(module)分開管理,主要起到讓應用模塊化的做用。瀏覽器
1、建立Flask工程並安裝Flaskapp
剛建立工程以後的目錄,開發工具自動建立了虛擬環境:模塊化
安裝Flask依賴(略):工具
2、建立基礎目錄開發工具
先建立一個package,做爲整個項目的根目錄(注意建立時選Python Package,而不是選Directory),this
建立Python Package會自動生成__init__.py文件,而建立Directory不會生成:url
建立一個名爲app的包:spa
在app包下自動生成一個__init__.py文件:debug
基本目錄結構解釋:
最終的目錄結構以下:
3、構建藍圖
(1)home/__init__.py文件內容:
1 # coding:utf8 2 from flask import Blueprint 3 4 home = Blueprint("home", __name__) 5 6 import app.home.views
(2)admin/__init__.py文件內容:
1 # coding:utf8 2 from flask import Blueprint 3 4 admin = Blueprint("admin", __name__) 5 6 import app.admin.views
(3)home/views.py文件內容:
1 # coding:utf8 2 from . import home 3 4 @home.route("/") 5 def index(): 6 return "<h1 style='color:green'>this is home</h1>"
(4)admin/views.py文件內容:
# coding:utf8 from . import admin @admin.route("/") def index(): return "<h1 style='color:red'>this is admin</h1>"
(5)app/__init__.py文件內容:
1 # coding:utf8 2 from flask import Flask 3 4 app = Flask(__name__) 5 app.debug = True 6 7 from app.home import home as home_blueprint 8 from app.admin import admin as admin_blueprint 9 10 app.register_blueprint(home_blueprint) 11 app.register_blueprint(admin_blueprint, url_prefix="/admin")
(6)manage.py文件內容(這是整個Flask工程的入口):
1 # cofing:utf8 2 from app import app 3 4 if __name__ == "__main__": 5 app.run()
4、運行FlaskWeb工程
右鍵執行manage.py:
控制檯輸出:
在瀏覽器中訪問 http://127.0.0.1:5000/
在瀏覽器中訪問 http://127.0.0.1:5000/admin/
【結束】