溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python中的Flask與Django有什么相同、異同

發(fā)布時間:2020-06-15 16:01:16 來源:億速云 閱讀:296 作者:元一 欄目:編程語言

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)文章!

向AI問一下細(xì)節(jié)

免責(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)容。

AI