Flask 注冊(cè)藍(lán)圖

2021-08-10 18:01 更新

那么你如何注冊(cè)藍(lán)圖?像這樣:

from flask import Flask
from yourapplication.simple_page import simple_page

app = Flask(__name__)
app.register_blueprint(simple_page)

如果你檢查已經(jīng)注冊(cè)到應(yīng)用的規(guī)則,你會(huì)發(fā)現(xiàn)這些:

[<Rule '/static/<filename>' (HEAD, OPTIONS, GET) -> static>,
 <Rule '/<page>' (HEAD, OPTIONS, GET) -> simple_page.show>,
 <Rule '/' (HEAD, OPTIONS, GET) -> simple_page.show>]

第一個(gè)顯然是來(lái)自應(yīng)用自身,用于靜態(tài)文件。其它的兩個(gè)用于 simple_page 藍(lán)圖中的 show 函數(shù)。如你所見(jiàn),它們的前綴是藍(lán)圖的名稱,并且用一個(gè)點(diǎn) ( . )來(lái)分割。

不過(guò),藍(lán)圖也可以在不同的位置掛載:

app.register_blueprint(simple_page, url_prefix='/pages')

那么,這些果然是生成出的規(guī)則:

[<Rule '/static/<filename>' (HEAD, OPTIONS, GET) -> static>,
 <Rule '/pages/<page>' (HEAD, OPTIONS, GET) -> simple_page.show>,
 <Rule '/pages/' (HEAD, OPTIONS, GET) -> simple_page.show>]

在此之上,你可以多次注冊(cè)藍(lán)圖,雖然不是每個(gè)藍(lán)圖都會(huì)正確地響應(yīng)這些。實(shí)際上, 藍(lán)圖能否被多次掛載,取決于藍(lán)圖是怎樣實(shí)現(xiàn)的。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)