天地所以能長且久者,以其不自生,故能長生。
——老子《道德經(jīng)》
寫在前面:Django在學習的過程中,我們會參考官方文檔,從兩部分進行講解,第一部分主要是一個入門項目的搭建開發(fā),第二部分是核心的講解。過程中可能會有一些配置或者技術點不會明確的講解,入門項目要求是能寫出代碼、能跟著文檔寫出項目,能了解項目即可。其余的后續(xù)章節(jié)中會有詳細介紹,此時~不用恐懼不用害怕不用擔心,某些細節(jié)問題我們暫時可以不求甚解!
本節(jié)內(nèi)容
- 項目結構了解
- 創(chuàng)建第一個項目
- 運行并訪問我們的項目
1. Django創(chuàng)建項目的結構
在使用django開始創(chuàng)建并開發(fā)項目之前,我們先簡單了解一下Djaogo對于項目的管理的結構,這里要提出的是,Django之所以可以方便快捷的開發(fā)大型WEB應用,最大的特點是它面向?qū)ο箝_發(fā)的基礎上的模塊化開發(fā),將項目中需要的各個功能可以封裝成或大或小的模塊,這些模塊在項目中是可插拔時的,非常有利于項目的更新和擴展
所以,Django框架在使用時,首先會常見一個項目(根模塊),然后在項目的技術上,創(chuàng)建各個應用的子模塊,將子模塊引入到我們的根模塊中進行使用
Django常見的項目類似于我們創(chuàng)建了一個插線板,插線板上可以插入多個用電器,每一個用電器都是實現(xiàn)了某些功能的一個模塊,此時這個插線板的功能就非常強大了,可以通過接入不同的用電器實現(xiàn)各種特殊的功能了,插入電腦電源插線板項目中就包含了電腦的功能,插入手機充電器~插線板就實現(xiàn)了給手機充電的功能等等
Django創(chuàng)建的項目和模塊的結構
2. Django創(chuàng)建項目
首先,我們確定要開發(fā)Django項目的文件夾,如我的項目放在D:\resp_work\PY_WORK
目錄下,第一步,命令行進入該目錄cd D:\resp_work\PY_WORK
第二:我們確定要開發(fā)的項目名稱,案例中我們的項目名稱為:mysite
第三:命令行執(zhí)行django創(chuàng)建項目的命令,如下
django-admin startproject mysite
創(chuàng)建項目
執(zhí)行完命令之后,可以在項目文件夾D:\resp_work\PY_WORK
下看到創(chuàng)建好的項目如下:
Django創(chuàng)建的項目結構
項目結構文件簡單介紹【了解即可】
|-- mysite/ # 該文件夾只是項目的容器文件夾,可以任意命名,建議使用默認的即可
|-- mysite/ # 這個是mysite項目的主體模塊,也就是前面說到的根模塊
|--__init__.py # 這是一個空文件,主要是用來聲明mysite/文件夾是一個python模塊
|-- settings.py # 用于Django項目設置的配置文件
|-- urls.py # 網(wǎng)站的目錄,也是網(wǎng)站所有URL地址配置的文件
|-- wsgi.py # 一個兼容WSGI入口點的web服務器
|-- manage.py # 這是用于在命令行中執(zhí)行項目管理的一個文件,內(nèi)容不需要修改
3. 運行及訪問Django項目
我們已經(jīng)創(chuàng)建好了基于Django的一個項目,那么怎么在web容器中啟動這個項目,并且可以在瀏覽器中訪問它呢?
在命令行進入我們創(chuàng)建的mysite/
文件夾,執(zhí)行如下命令,啟動服務
> cd mysite
> python3 manage.py runserver
執(zhí)行命令之后,會出現(xiàn)如下結果
啟動服務
接下來,就可以在瀏覽器中進行網(wǎng)站的訪問了,從上述執(zhí)行結果中,就可以看出提示通過http://127.0.0.1:8000
端口進行訪問
瀏覽器中訪問網(wǎng)站應用,出現(xiàn)如下結果,說明網(wǎng)站服務已經(jīng)運行成功
瀏覽器中訪問的情況
4. 擴展:通過指定IP地址和端口啟動服務
默認情況下,我們可以通過python manage.py runserver
啟動服務時,綁定當前PC的ip地址和8000端口來啟動服務
如果我們想通過自定義端口進行訪問的話,可以通過如下的命令來啟動服務
使用自定義的8080端口來啟動服務
python3 manage.py runserver 8080
瀏覽器中可以通過如下的形式訪問:http://localhost:8080

如果此時我們想指定IP地址和端口來啟動服務,首先要確定我們自己PC的IP地址
命令行中查看IP地址命令
windows系統(tǒng)中,在命令行執(zhí)行如下命令查看IP地址
ipconfig
linux/unix系統(tǒng)中,在命令行執(zhí)行如下命令查看IP地址
ifconfig
查看到自己的IP地址之后,就可以通過`python manage.py runserver ip:port`的命令來指定IP地址和端口啟動我們的服務了
python3 manage.py runserver 192.168.10.119:8080
執(zhí)行上述代碼就可以看到如下結果
> 
服務時啟動成功了,如果我們此時直接通過IP地址訪問的話,就會出先如下錯誤
> 
> 這是因為在指定IP地址的時候,出于安全考慮,服務器中并沒有配置除了本機localhost之外的其他IP地址,所以出現(xiàn)了錯誤提示`You may need to add <ip> to ALLOWED_HOST`,我們打開`mysite/mysite/settings.py`配置文件,修改如下代碼
settings.py中找到這行代碼,添加我們設置的IP地址
ALLOWED_HOSTS = ["192.168.10.119"]
> 重啟django服務,通過瀏覽器訪問我們的服務器,整個世界清凈了...

---
