Django 架構:MVT 框架的工作系統解釋
已發表: 2020-12-23目錄
介紹
Django 是用 Python 語言編寫的最簡單高效的 Web 應用程序框架之一。 該框架是免費和開源的,因此主要取代了使用 PHP、servlet 等來開發任何網站的後端。 它由 Django Software Foundation 於 2005 年 7 月 15 日開發。
Django 為從事複雜 Web 開發框架的開發人員提供了一個無與倫比的優勢,即易於創建數據庫。 最重要的是,Django 提供了最快的數據流之一,並確保安全性不受影響。
Django 的架構主要遵循 MVT 框架,如下所述。
- 男:型號
- 五:查看
- T:模板
MVT 可以看作是由模型、視圖和控制器組成的 MVC 框架的替代方案。 MVT 和 MVC 之間的主要區別在於 Django 架構負責由 MVC 架構的控制器部分處理的職責。 Django 利用其模板來執行所有與控制器相關的任務。簡單來說,模板包含的內容是 Django 模板語言(也稱為 DTL)和 HTML(超文本標記語言)的混合體。
如上所述,模板負責所有與 UI 相關的操作和自定義以及應用程序的架構相關活動。 在模板的基礎上,我們有“視圖”。 視圖控制應用程序的邏輯處理和決策活動,並與“模型”通信以獲取相應的數據點,並根據需要相應地更改模板。
如上所述,Django 本身充當控制器,它獲取連接到應用程序視圖部分的 URL,並最終將相應的用戶響應發送到應用程序。 這是 Django MVT 架構中發生的整體交互。

必讀: Github 上的 Django 項目
模型
在 Django 中,模型起著將整個架構鏈接到數據庫的重要作用。 在整個過程中,每個模型都連接到數據庫中的單個表。 與此過程相關的方法和字段在通常定義為 models.py 的單獨文件中聲明。
一旦鏈接過程完成並且所有內容都連接到數據庫,我們將能夠評估每一行,或者更準確地說,從相應的表中記錄,甚至可以在表上相應地執行不同的 DML 操作。
Django.db.models 是本例中使用的子類。 我們可以使用 Python 的默認導入功能作為“從 django.db 導入模型”。
在定義我們的數據庫列、表和記錄之後,我們將通過在 settings.py 中提及映射來獲取連接到應用程序的數據。

看法
數據流框架的整體邏輯在這部分模型中定義。 整個代碼在views.py 文件中定義。
視圖文件的另一個任務是在使用應用程序時將響應發送給相應的用戶。 通俗地說,我們可以簡單地斷言 view.py 能夠處理 HttpResponse。
創建視圖文件後,我們想到的下一個問題是如何將此文件鏈接到我們的應用程序? 我們如何確保框架能夠理解何時顯示特定視圖? 可以通過將 views.py 映射到單獨的 urls.py 文件中來建立這種理解。 正如我們上面所討論的,urls.py 負責跟踪所有不同的頁面並因此映射它們中的每一個。
模板
每當我們想為複雜的操作或功能創建一個動態網站時,模板可以幫助我們以簡單的方式實現這一目標。 簡而言之,動態網站發送和接收動態或變化的數據。 動態數據通常與向每個用戶呈現他或她自己的個性化數據的場景相關聯。 例如,Facebook、Instagram、Twitter 等社交媒體網站上的帖子或金融科技產品的不同交易等。
模板在 INSTALLED_APPS 下的 settings.py 文件中設置。 因此,python 代碼將簡單地搜索模板子目錄下的關聯文件。 有兩個選項可以做到這一點——我們可以生成一個 HTML 文件,或者簡單地通過瀏覽器導入一個動態網頁並將其保存在相應的模板文件夾中。
現在為了得到響應,我們將在 urls.py 和 views.py 中鏈接這個文件。 在所有的鏈接過程完成後,我們就可以啟動並運行我們的網站了。
按照這些思路,這就是 Django 的工作方式。 主要的 Python 記錄用於相互交互以顯示我們的頁面是 settings.py、view.py 和 urls.py

當我們在這裡單獨描述我們的基本原理時,我們可以有一個連接數據庫的工作流程,獲取客戶數據源和反應並顯示動態頁面。 如果您想深入了解 Django,請查看文檔並理解它們之間的聯繫。
另請閱讀: Python Django 項目創意
報名參加世界頂尖大學的軟件工程課程。 獲得行政 PG 課程、高級證書課程或碩士課程,以加快您的職業生涯。
結論
我們相信您喜歡我們對 Django 框架的概述。 如果您對本文有任何疑問或建議,請通過下面的評論部分告訴我們。 我們很想听聽您的想法。
如果您有興趣學習 Django 和其他全棧工程工具和框架,請查看 upGrad 和 IIIT-B 的全棧軟件開發執行 PG 計劃,該計劃面向工作專家並提供 500 多篇完整的準備工作,9+ 企業和任務,IIIT-B 校友身份,合理的積極頂點企業和頂級公司的就業幫助。
