Django 第一個應用
一、 新建專案
dango-admin statproject 專案名稱
一個新建立的專案結構大概如下:
各檔案和目錄解釋:
-
外層的
cx_data_mock/
目錄與Django無關,只是你專案的容器,可以任意重新命名。 -
manage.py
:一個命令列工具,管理Django的互動指令碼。 -
內層的cx_data_mock
/
目錄是真正的專案檔案包裹目錄,它的名字是你引用內部檔案的Python包名,例如:cx_data_mock.urls
。 -
cx_data_mock/__init__.py
:一個定義包的空檔案。 -
cx_data_mock/settings.py
:專案的配置檔案。 -
cx_data_mock/urls.py
-
cx_data_mock/wsgi.py
:一個基於WSGI的web伺服器進入點,提供底層的網路通訊功能,通常不用關心。 -
cx_data_mock/asgi.py
:一個基於ASGI的web伺服器進入點,提供非同步的網路通訊功能,通常不用關心。
三、 建立賬戶應用(app)
在 Django 中,每一個應用(app)都是一個 Python 包,並且遵循著相同的約定。Django 自帶一個工具,可以幫你生成應用的基礎目錄結構。
app應用與project專案的區別:
- 一個app實現某個具體功能,比如部落格、公共檔案資料庫或者簡單的投票系統;
- 一個project是配置檔案和多個app的集合,這些app組合成整個站點;
- 一個project可以包含多個app;
- 一個app可以屬於多個project!
app的存放位置可以是任何地點,但是通常都將它們放在與manage.py
指令碼同級的目錄下,這樣方便匯入檔案。
進入cx_data_mock專案根目錄,確保與manage.py
檔案處於同一級,輸入下述命令:
系統會自動生成account應用的目錄,其結構如下:
四、編寫第一個檢視
1、在account/views.py
檔案中,編寫程式碼:
2、路由配置
在account目錄中新建一個檔案,名字為urls.py
(不要換成別的名字),在其中輸入程式碼如下:
3、配置專案根路由
在專案的主urls.py檔案中新增urlpattern
條目,指向我們剛才建立的account這個app獨有的urls.py檔案,這裡需要匯入include模組。輸入程式碼如下:
include語法相當於多級路由,它把接收到的url地址去除與此項匹配的部分,將剩下的字串傳遞給下一級路由urlconf進行判斷。在路由的章節,有更加詳細的用法指導。
include的背後是一種即插即用的思想。專案的根路由不關心具體app的路由策略,只管往指定的二級路由轉發,實現了應用解耦。app所屬的二級路由可以根據自己的需要隨意編寫,不會和其它的app路由發生衝突。app目錄可以放置在任何位置,而不用修改路由。這是軟體設計裡很常見的一種模式。
建議:除了admin路由外,儘量給每個app設計自己獨立的二級路由。
五、 啟動開發伺服器
回到cx_data_mock專案的根目錄,也就是manage.py
檔案的同級目錄下,輸入下面的命令:
Django提供了一個用於開發的web伺服器,使你無需配置一個類似Ngnix的生產伺服器,就能讓站點執行起來。這是一個由Python編寫的輕量級伺服器,簡易並且不安全,因此不要將它用於生產環境。
開啟瀏覽器,訪問http://127.0.0.1:8001/account
,你將看到Hello word歡迎介面。