Blueprint(藍圖)

1. 什麼是藍圖

在Flask項目中可以用Blueprint(藍圖)實現模塊化的應用,使用藍圖可以讓應用層次更清晰,開發者更容易去維護和開發項目。藍圖將作用於相同的URL前綴的請求地址,將具有相同前綴的請求都放在一個模塊中,這樣查找問題,一看路由就很快的可以找到對應的視圖,並解決問題了。

2. 使用藍圖

2.1 安裝

pip install flask_blueprint

2.2 實例化藍圖應用

blue = Blueprint('app', __name__)

注意:Blueprint中傳入了兩個參數,第一個是藍圖的名稱,第二個是藍圖所在的包或模塊,name代表當前模塊名或者包名

2.3 註冊

app = Flask(__name__)
# 綁定藍圖blue和app的關係
app.register_blueprint(blueprint=blue,url_prefix='/app')

注意:第一個參數即我們定義初始化定義的藍圖對象,第二個參數url_prefix表示該藍圖下,所有的url請求必須以/app開始。這樣對一個模塊的url可以很好的進行統一管理

3. url_for反向解析

語法:

url_for('藍圖中定義的第一個參數.函數名', 參數名=value)

定義跳轉:

@blue.route('/redirect/')
def redirect_hello():
    # 實現跳轉
    # 1、硬編碼
    # return redirect('/app/')
    # 2、反向解析redirect(url_for('藍圖別名.跳轉的函數名'))
    # return redirect(url_for('app.hello_world'))
    return redirect(url_for('app.get_id', id=3))
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章