django的安裝 django環境搭建



文章插圖
django的安裝 django環境搭建

文章插圖
【django的安裝 django環境搭建】安裝Django
Django 框架是用Python語言開發的,所以安裝Django 就像安裝其他的 Python庫一樣,執行如下命令即可
> pip install django你可以執行如下命令檢查Django是否安裝好,并且查看安裝的Django版本
> python -m django --version如果像上面那樣顯示出一個版本數字(比如這里就是2.1.3) 表示已經安裝好了 。
創建項目
安裝好以后,我們需要創建我們 的 項目目錄,項目目錄里面保存了開發系統的所有文件 。
我們可以創建 d:projects 作為我們的項目所在的目錄 。
然后從命令行窗口中 進入到 d:projects 目錄,執行下面的命令創建項目目錄
django-admin startproject Demo
注意最后的 Demo 就是項目的根目錄名,執行上面命令后,就會創建 如下的目錄結構:
Demo/
manage.py
Demo/
__init__.py
settings.py
urls.py
wsgi.py
最外層 Demo/ 就是項目根目錄 d:projectsDemo ,項目文件都放在里面 。
manage.py 是一個工具腳本,用作項目管理的 。以后我們會使用它執行管理操作 。
里面的 Demo/ 目錄是python包 。里面包含項目的重要配置文件 。這個目錄名字不能隨便改,因為manage.py 要用到它 。
Demo/settings.py 是 Django 項目的配置文件. 包含了非常重要的配置項,以后我們可能需要修改里面的配置 。
Demo/urls.py 里面存放了 一張表,聲明了前端發過來的各種http請求,分別由哪些函數處理. 這個我們后面會重點地講 。
Demo/wsgi.py 要了解這個文件的作用,我們必須明白wsgi 是什么意思
python 組織制定了 web 服務網關接口(Web Server Gateway Interface) 規范 ,簡稱wsgi 。參考文檔:https://www.python.org/dev/peps/pep-3333/
遵循wsgi規范的 web后端系統,我們可以理解為 由兩個部分組成
wsgi web server 和 wsgi web application
它們通常是運行在一個python進程中的兩個模塊,或者說兩個子系統 。
wsgi web server 接受到前端的http請求后,會調用 wsgi web application 的接口( 比如函數或者類方法)方法,由wsgi web application 具體處理該請求 。然后再把處理結果返回給 wsgi web server,wsgi web server再返回給前端 。
如下圖所示
為什么要搞出兩個子系統,這么麻煩呢?
因為這兩個子系統有各自負責的重點 。
wsgi web server 負責 提供高效的http請求處理環境,可以使用多線程、多進程或者協程的機制 。
http 請求發送到 wsgi web server ,wsgi web server 分配 線程或者進程或者 輕量級線程(協程),然后在 這些 線程、進程、或者協程里面,去調用執行 wsgi web application 的入口代碼 。
wsgi web application 被調用后,負責 處理 業務邏輯 。業務邏輯的處理可能非常復雜,wsgi web application 需要精心的設計來正確處理 。
django是 wsgi web application 的框架,它只有一個簡單的單線程 wsgi web server 。供調試時使用 。
產品正式上線運行的時候,通常我們需要高效的 wsgi web server 產品,比如 gunicorn,uwsgi,cherrypy等,結合Django ,組成一個高效的 后端服務 。
所以這個 wsgi.py 就是 提供給wsgi web server調用 的接口文件,里面的變量application對應對象實現了 wsgi入口,供wsgi web server調用。
2021年10月18日補充
上面的方式創建的項目,項目配置目錄和項目本身目錄同名 。
可以這樣創建目錄,結構更合理一些:
# 執行命令創建項目目錄,并且進入到項目目錄
mkdir Demo&& cd Demo# 然后執行命令 創建manage.py 和 項目配置目錄 名為 config
django-admin startproject config .運行 Django web服務
剛才我們說了,django雖然只是 wsgi web application 的框架,但是它也有一個簡單的 wsgi web server。供調試時使用 。
所以也構成一個完整的后端web服務 。本地調試代碼的時候,完全可以運行起來 。
運行開發web 服務只需要在命令行窗口里面,
首先進入到項目根目錄 ,比如,我們這里就是 d:projectsDemo
然后執行如下命令
python manage.py runserver 0.0.0.0:80這樣服務就會被啟動 。我們就可以在瀏覽器訪問web服務了 。
其中 0.0.0.0:80 是指定 web服務綁定的 IP 地址和端口 。
0.0.0.0 表示綁定本機所有的IP地址,就是可以通過任何一個本機的IP (包括回環地址 127.0.0.1 ) 都可以訪問我們的服務 。
80 表示是服務啟動在80端口上 。
請打開瀏覽器,地址欄輸入 ‘127.0.0.1’ ,就可以看到如下的界面,表示Django服務搭建成功,啟動成功 。
注意,啟動web服務的命令行窗口不能關閉,如果關閉,web服務就停止了 。