本篇文章給大家帶來的內容是關于python中Flask藍圖的使用方法(附代碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。
藍圖
之前我們已經通過代碼了解了一些Flask基本的用法,現在出現一個問題,我們要做的功能越來越多,路由是不是都要放在run文件中呢?例如我們在不同的文件都定義了一些路由,如果想要訪問他們,是不是要開啟很多個不同的服務呢?
Flask中提供了藍圖,專門用作Flask的模塊化。
Flask使用藍圖的概念來制作應用程序組件和支持應用程序內部或跨應用程序的通用模式。藍圖可以大大簡化大型應用程序的工作方式,并為Flask擴展提供了在應用程序上注冊操作的中心手段。Blueprint對象的工作方式與Flask應用程序對象類似,但實際上它不是一個應用程序。相反,它是如何構造或擴展應用程序的藍圖。
總之,藍圖可以使我們的程序更加模塊化,不同功能的路由可以放在不同的模塊下,最后集中到啟動類中。
首先,新建一個flask項目文件,建立文件結構如下圖所示:
主運行文件
from app.movie.view import movie as movie_bp from app.tag.view import tag as tag_bp from flask import Flask if __name__ == '__main__': app = Flask(__name__) app.register_blueprint(tag_bp,url_prefix='/tag') app.register_blueprint(movie_bp,url_prefix='/movie') app.run(port=9099)
模塊一:標簽
所有的路由和視圖函數依舊單獨寫在一個文件里面,這里起名view.py
from flask import Blueprint tag = Blueprint('tag',__name__) @tag.route('/') def index(): return 'ok' @tag.route('/add/') def add(): return 'tag add'
模塊二:電影
所有的路由和視圖函數依舊單獨寫在一個文件里面,這里起名view.py
from flask import Blueprint movie = Blueprint('movie',__name__) @movie.route('/') def index(): return 'ok' @movie.route('/add/') def add(): return 'movie add'
運行結果
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com