Flask 剖析擴(kuò)展

2021-08-11 21:17 更新

所有的擴(kuò)展都位于一個(gè)叫做 flask_something 的包,其中“ something ”是你 想要連接的庫(kù)的名字。那么,例如當(dāng)你計(jì)劃要為 Flask 添加一個(gè)叫做 simplexml 的庫(kù)的支持時(shí),你應(yīng)該把你擴(kuò)展的包命名為 flask_simplexml 。

實(shí)際的擴(kuò)展名(人類可讀的名稱)無(wú)論如何會(huì)是“Flask-SimpleXML”之類的東西。 確保在名字中包含“Flask”并注意大小寫(xiě)。這是用戶可以在他們的 setup.py 文 件中注冊(cè)你的擴(kuò)展為依賴的方式。

Flask 設(shè)立了一個(gè)叫做 flask.ext 的重定向包,用戶應(yīng)該從這個(gè)包導(dǎo)入 擴(kuò)展。例如,如果你有一個(gè)叫做 flask_something 的包,用戶應(yīng)該用 flask.ext.something 的方式導(dǎo)入。這樣做是為了從老命名空間的包過(guò)度。 詳情見(jiàn) 擴(kuò)展導(dǎo)入的過(guò)渡

但是擴(kuò)展如何看起來(lái)像擴(kuò)展?一個(gè)擴(kuò)展必須保證它可以同時(shí)在多個(gè) Flask 應(yīng)用中工 作。這是必要條件,因?yàn)樵S多人會(huì)使用類似 應(yīng)用程序的工廠函數(shù) 的模式來(lái)創(chuàng)建 應(yīng)用來(lái)進(jìn)行單元測(cè)試或是支持多套配置。因此,你的應(yīng)用支持這種行為非常重要。

最重要的是,擴(kuò)展必須與一個(gè) setup.py 文件一起裝配,并且在 PyPI 上注冊(cè)。同 樣,開(kāi)發(fā) checkout 鏈接也應(yīng)該能工作,這樣才可以在 virtualenv 中容易地安裝開(kāi) 發(fā)版本,而不是手動(dòng)下載庫(kù)。

Flask 擴(kuò)展必須以 BSD 或 MIT 或更自由的許可證來(lái)許可,這樣才能被列入到 Flask Extension Registry 。記住 Flask Extension Registry 是一個(gè)人工維護(hù)的地方, 并且會(huì)視這些庫(kù)的行為來(lái)決定是否進(jìn)行必要的提前審查。


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

掃描二維碼

下載編程獅App

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

編程獅公眾號(hào)