1. 程式人生 > 實用技巧 >python---Django框架基礎介紹

python---Django框架基礎介紹

Django介紹

1.簡介

Django,發音為[`dʒæŋɡəʊ],是用python語言寫的開源web開發框架,並遵循MVC設計。勞倫斯出版集團為了開發以新聞內容為主的網站,而開發出來了這個框架,於2005年7月在BSD許可證下發布。這個名稱來源於比利時的爵士音樂家DjangoReinhardt,他是一個吉普賽人,主要以演奏吉它為主,還演奏過小提琴等。由於Django在近年來的迅速發展,應用越來越廣泛,被著名IT開發雜誌SDTimes評選為2013SDTimes100,位列"API、庫和框架"分類第6位,被認為是該領域的佼佼者。
Django的主要目的是簡便、快速的開發資料庫驅動的網站。它強調程式碼複用,多個元件可以很方便的以"外掛"形式服務於整個框架,Django有許多功能強大的第三方外掛,你甚至可以很方便的開發出自己的工具包。這使得Django具有很強的可擴充套件性。它還強調快速開發和DRY(DoNotRepeatYourself)原則。

2.特點

1)重量級框架

對比Flask框架,Django原生提供了眾多的功能元件,讓開發更簡便快速。

  • 提供專案工程管理的自動化指令碼工具

  • 資料庫ORM支援(物件關係對映,英語:Object Relational Mapping)

  • 模板

  • 表單

  • Admin管理站點

  • 檔案管理

  • 認證許可權

  • session機制

  • 快取

2)MVT模式

有一種程式設計模式叫MVC,其核心思想是分工、解耦,讓不同的程式碼塊之間降低耦合,增強程式碼的可擴充套件性和可移植性,實現向後相容。
MVC的全拼為Model-View-Controller,最早由TrygveReenskaug在1978年提出,是施樂帕羅奧多研究中心(Xerox PARC)在20世紀80年代為程式語言Smalltalk發明的一種軟體設計模式,是為了將傳統的輸入(input)、處理(processing)、輸出(output)任務運用到圖形化使用者互動模型中而設計的。隨著標準輸入輸出裝置的出現,開發人員只需要將精力集中在業務邏輯的分析與實現上。後來被推薦為Oracle旗下Sun公司Java EE平臺的設計模式,並且受到越來越多的使用ColdFusion和PHP的開發者的歡迎。現在雖然不再使用原來的分工方式,但是這種分工的思想被沿用下來,廣泛應用於軟體工程中,是一種典型並且應用廣泛的軟體架構模式。後來,MVC的思想被應用在了Web開發方面,被稱為Web MVC框架。

MVC模式說明

MVC設計模式

  • M全拼為Model,主要封裝對資料庫層的訪問,對資料庫中的資料進行增、刪、改、查操作。
  • V全拼為View,用於封裝結果,生成頁面展示的html內容。
  • C全拼為Controller,用於接收請求,處理業務邏輯,與Model和View互動,返回結果。

Django的MVT

MVT設計模式

  • M全拼為Model,與MVC中的M功能相同,負責和資料庫互動,進行資料處理。
  • V全拼為View,與MVC中的C功能相同,接收請求,進行業務處理,返回應答。
  • T全拼為Template,與MVC中的V功能相同,負責封裝構造要返回的html。
注:差異就在於黑線黑箭頭標識出來的部分

3.Django學習資料

  • 1.官方網站:https://www.djangoproject.com/
  • 2.Github原始碼:https://github.com/django/django
  • 3.Django1.11版英文文件:https://docs.djangoproject.com/en/1.11/
  • 4.Django1.11版中文文件:https://yiyibooks.cn/xx/Django_1.11.6/index.html
  • 5.Django Book 教程:https://djangobook.com/
  • 6.Tange With Django 教程:https://www.tangowithdjango.com/book17/

4.建立Django專案

步驟

  • 建立Django專案
    django-admin startproject 專案名稱
  • 建立子應用
    python manager.py startapp 子應用名稱

5.建立工程

在使用Flask框架時,專案工程目錄的組織與建立是需要我們自己手動建立完成的。

在django中,專案工程目錄可以藉助django提供的命令幫助我們建立。

1.建立

建立工程的命令為:

django-admin startproject 工程名稱

例如:想要在桌面的code目錄中建立一個名為stockmanager的專案工程,可執行如下命令:

cd ~/Desktop/Code

django-admin startproject stockmanager

執行後,會多出一個新目錄名為stockmanager,此即為新建立的工程目錄。

2.工程專案說明

檢視建立的工程目錄,結構如下
專案結構

  • 與專案同名的目錄,此處為stockmanager。
  • settings.py是專案的整體配置檔案。
  • urls.py是專案的URL配置檔案。
  • wsgi.py是專案與WSGI相容的Web伺服器入口。
  • manage.py是專案管理檔案,通過它管理專案。

3.執行開發伺服器

在開發階段,為了能夠快速預覽到開發的效果,django提供了一個純python編寫的輕量級web伺服器,僅在開發階段使用。

執行伺服器命令如下:

python manage.py runserver ip:埠

或:

python manage.py runserver
可以不寫IP和埠,預設IP是127.0.0.1,預設埠為8000。

啟動後可見如下資訊: