您好,登錄后才能下訂單哦!
Flask定義
Flask是一個使用 Python 編寫的輕量級 Web 應(yīng)用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎則使用 Jinja2 。Flask使用 BSD 授權(quán)。
Flask也被稱為 "microframework" ,因為它使用簡單的核心,用 extension 增加其他功能。Flask沒有默認(rèn)使用的數(shù)據(jù)庫、窗體驗證工具。
Django定義
Django是一個開放源代碼的Web應(yīng)用框架,由Python寫成。采用了MVT的框架模式,即模型M,視圖V和模板T。它最初是被開發(fā)來用于管理勞倫斯出版集團(tuán)旗下的一些以新聞內(nèi)容為主的網(wǎng)站的,即是CMS(內(nèi)容管理系統(tǒng))軟件。并于2005年7月在BSD許可證下發(fā)布。這套框架是以比利時的吉普賽爵士吉他手Django Reinhardt來命名的。
相似之處
讓我們從相似之處開始。
1) Flask 和 Django 都是 Python Web 開發(fā)框架
它們使您能夠使用 Python 在服務(wù)端創(chuàng)建 Web 應(yīng)用,并使用 html 和 CSS 作為前端,或者使用您喜歡的任何前端框架。
2) 可以使用 ORM 或?qū)ο箨P(guān)系映射
這基本上意味著,您可以使用 SQLITE,MYSQL,PostgreSQL 和其他利用 ORM 的數(shù)據(jù)庫。
-Django 默認(rèn)使用 ORM
-Flask 默認(rèn)情況下不具備 ORM 功能。需要時可手動添加它。
3) 模板.
-Django 使用類似于 Jinja 的模板引擎(實際上 Jinja 的靈感來自于 Django 自己的模板系統(tǒng))
小評論:Django 不使用 Jinja,但它有自己的模板引擎。它們看起來很相似,因為正如 Jinja 的網(wǎng)站所說,『它的靈感來自于 Django 的模板系統(tǒng)』。
-Flask 使用 Jinja 作為其模板引擎。
Jinja 基本上就像 HTML 的 Python(python + html = Jinja),它使您能夠向 HTML 添加邏輯,例如 if/else,for 循環(huán)和我真正喜歡的模板擴(kuò)展!
Flask 和 Django 之間還有許多相似之處,但對我而言,這是三個主要的相似之處。
差異
Flask 和 Django 的差異還是蠻大的,接下來我們一一探討。
使用 Flask,您可以獲得難以置信的靈活性。
您在創(chuàng)建 app.py(類似于應(yīng)用程序的主要邏輯),models.py(在其中存儲用于創(chuàng)建數(shù)據(jù)庫表的模型的位置),模板等。您對于應(yīng)用構(gòu)建結(jié)構(gòu)有絕對控制權(quán)。
使用 Django, 一切都是為您構(gòu)建的!
settings.py(類似于應(yīng)用程序的配置文件),models.py,urls.py(所有路由的存儲位置),模板等。
這就是為什么 Django 的標(biāo)簽是 為 Deadline 所生的框架 的原因。因為所有功能都是內(nèi)置的,您無需費心創(chuàng)建文件并思考應(yīng)用結(jié)構(gòu)如何設(shè)計。 一切已準(zhǔn)備就緒,您可以立即開始構(gòu)建應(yīng)用。
結(jié)論
Flask 和 Django 都有優(yōu)點和不足,并且每個都有自己的用途和目的。
如果您要開發(fā)的應(yīng)用程序簡單而不復(fù)雜,那么 Flask 是您的最佳選擇。
但是,如果您是初學(xué)者并且想使用 Python 進(jìn)行 Web 開發(fā),我建議您從 Flask 開始。您在 Flask 中學(xué)習(xí)的內(nèi)容可以應(yīng)用于 Django ,因此 Flask 相對來說更加容易。
以上就是Flask 和 Django 區(qū)別的詳細(xì)內(nèi)容,更多請關(guān)注億速云其它相關(guān)文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。