這篇文章將為大家詳細(xì)講解有關(guān)flask的組成有哪些,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。
創(chuàng)新互聯(lián)建站專注于上林網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供上林營(yíng)銷型網(wǎng)站建設(shè),上林網(wǎng)站制作、上林網(wǎng)頁(yè)設(shè)計(jì)、上林網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造上林網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供上林網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。
Flask介紹:
Flask是一種使用Python編寫的輕量級(jí)的Web框架, WSGI工具采用Werkzeug,模板引擎使用Jinja2, Flask使用的是BSD授權(quán),
Flask核心簡(jiǎn)單, 可以自定義擴(kuò)展, 沒有固定的數(shù)據(jù)庫(kù)和模板等設(shè)置, 簡(jiǎn)單輕便,
Flask也有web開發(fā)'微'框架之稱。
開始項(xiàng)目
下面是官網(wǎng)中的一個(gè)Flask項(xiàng)目, 只需要簡(jiǎn)單的7行代碼, 我們就是可以讓一個(gè)Flask項(xiàng)目運(yùn)行起來
Flask由于框架體量小, 所有的拓展包都需要我們自己去安裝, 所以一個(gè)Flask項(xiàng)目會(huì)安裝很多的拓展包是很常見的
最簡(jiǎn)單的一個(gè)Flask項(xiàng)目
from flask import Flask app = Flask(__name__) @app.route('/') def hello(): return 'hello' if __name__ == '__main__': main()
拆分
基于項(xiàng)目的可拓展性和代碼的可閱讀性, 當(dāng)代碼量較大時(shí), 將所有的代碼寫在一個(gè)文件中是一件很可怕的事, 所以我們就要對(duì)其進(jìn)行拆分, 主要還是參考 MVC模式進(jìn)行, 將不同的功能放在其對(duì)應(yīng)的模塊中, 方便我們進(jìn)行閱讀
將主要的執(zhí)行內(nèi)容寫在執(zhí)行文件manage.py中, 引入 Manage 進(jìn)行管理app
創(chuàng)建app的文件目錄, 將views 和 models 寫入其中進(jìn)行管理
創(chuàng)建 static 目錄,存放靜態(tài)文件
創(chuàng)建 templates 目錄, 存放網(wǎng)頁(yè)模板
創(chuàng)建utils 目錄, 管理工具函數(shù)
Manger管理app
from flask_script import Manager from utils.functions import create_app app = create_app() manage = Manager(app=app) if __name__ == '__main__': manage.run()
views定義路由和控制器
需要藍(lán)圖
blueprint
from flask import Blueprint user_buleprint = Blueprint('user', __name__) # 'user'在重定向時(shí)使用 @user_blueprint.route('/') # 設(shè)置路由, 訪問的url def index(): return render_template('index.html') # 返回渲染的模板頁(yè)面 # 帶參數(shù)返回 @user_blueprint.route('/') def index(): content = '' return render_template('index.html', content=content)
注冊(cè)藍(lán)圖
utils.functions.py
from flask import Flask def create_app(): app = Flask(__name__) # 注冊(cè)藍(lán)圖, 設(shè)置url 前綴, 相當(dāng)于 django中的 namespace app.register_blueprint(blueprint=user_buleprint, url_prefix='/user') return app
視圖函數(shù)
路由
@app.route('/')
客戶端發(fā)送請(qǐng)求給服務(wù)器(瀏覽器到服務(wù)器), 進(jìn)而請(qǐng)求傳遞到Flask的應(yīng)用實(shí)例,應(yīng)用實(shí)例需要知道對(duì)于各個(gè)URL請(qǐng)求需要執(zhí)行哪部分代碼, 所以它給Python函數(shù)建立了一個(gè)URLs映射, 這種在URL和函數(shù)之間建立聯(lián)系的操作稱之為路由
route規(guī)則
在@app.route('/<int:name>')
string 字符串 默認(rèn)
int 整形
float 浮點(diǎn)型
path 路徑
uuid uuid字符串
any 任何,無限制。
關(guān)于flask的組成有哪些就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。
當(dāng)前標(biāo)題:flask的組成有哪些
轉(zhuǎn)載注明:http://chinadenli.net/article4/gepgie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、網(wǎng)站營(yíng)銷、外貿(mào)網(wǎng)站建設(shè)、微信小程序、App開發(fā)、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)