一 前言html
前面幾節以圖書管理系統開發爲切入點,對Django涉及的幾個核心概念點進行了介紹,但缺少連貫性。本文將從頭至尾完成一個簡單的實例項目,把Django開發流程串聯一遍,對想了解或學習Django Web開發的同窗應該會有一點幫助。python
二 Django入門實例web
1. 準備開發環境sql
以windows系統爲例,提早安裝好Python3、Django2、Pycharm,在此再也不贅述。數據庫
2. 建立Django項目windows
打開pycharm,fileànew projectàDjango,填寫項目Location和python解釋器後,點擊create,便可完成項目建立,如圖:瀏覽器
以上目錄及文件是建立項目時自動生成的。服務器
3. 建立APP微信
每一個項目能夠有多個app,每一個app能夠理解成項目的子模塊,因此app共享項目資源。app
在pycharm的terminal輸入如下命令,建立名爲login的app,以下:
命令執行後,項目Demo目錄下會自動生成login目錄及一系列文件。
4. 編寫路由
路由的做用是將瀏覽器發送的url請求轉發到對應的視圖函數,如圖:
在項目核心目錄urs.py裏增長路由,匹配到index的請求都轉發到login的index視圖函數進行處理。
5. 編寫視圖函數
路由轉發的請求由視圖函數處理,即業務邏輯實現部分,在app的views.py裏編寫,即定義並實現視圖函數,如圖:
6. 啓動WEB服務
在pycharm的terminal輸入以下命令,啓動web服務器(IP:PORT根據實際狀況修改):
python manage.py runserver 127.0.0.1:8080
啓動後,在瀏覽器訪問http://127.0.0.1:8080/index/,便可看到後臺視圖函數返回的結果,如圖:
到這裏,你的web應用已經可以正常運行了,整個流程已經通了,接下來,咱們進一步返回html頁面,而不是一個簡單的字符串。
7. 使用模板返回html頁面
1) 右鍵點擊templates目錄->new->html,新建一個html文件,編寫簡單html以下:
定義了一個簡單的html文件,經過視圖函數傳入wx_name變量並展現。
2) 當返回html頁面時,修改視圖函數以下:
經過render返回定義的index.html頁面,且傳入了wx_name的變量值「小蟒社區」。你可能會疑惑,它怎麼找到咱們定義的index.html呢?
3) 配置templates目錄
爲了讓渲染頁面時找到html文件,須要在settings.py裏配置路徑,以下:
4) 再次瀏覽器訪問http://127.0.0.1:8080/index/,便可看到後臺視圖函數返回的html頁面,如圖:
8. 實現先後臺交互
上面咱們已經能夠發送index的get請求,且返回指望的頁面。接下來,再看下如何整一個能夠和後臺交互的post請求。假定咱們有個很簡單的login頁面,輸入用戶名登陸後,返回hello 用戶名。
1) 新建模擬post請求的login頁面
爲了讓頁面顯得稍微好看一點,使用先前介紹的Bootstrap框架化個狀吧。在pycharm項目目錄,新建一個static目錄,而後再建一個js目錄存放jQuery,而且把下載的Bootstrap目錄也放到static裏,目錄結構如圖:
一樣,爲了讓Django可以找到咱們新建的static目錄,在settings.py裏增長以下配置項:
STATIC_URL = '/static/' STATICFILES_DIRS = [os.path.join(BASE_DIR, "static"),]
2) 在templates目錄新建login.html
像新建index頁面同樣,再建立一個login頁面,html簡單以下:
3) 增長login的路由及對應的視圖函數login,以下:
4) 訪問login頁面http://127.0.0.1:8080/login/,如圖:
5) 輸入用戶名 張3、密碼111,點擊提交按鈕,響應如圖:
9. 使用數據庫
限於篇幅緣由,使用數據庫部分再也不寫了,有興趣能夠自行查看相關資料,或者參考本系列文章——Django web開發系列(三)模型與管理後臺,有介紹默認數據sqllite及模型遷移的兩個命令。
10. 其餘
關於python學習、分享、交流,筆者開通了微信公衆號【小蟒社區】,感興趣的朋友能夠關注下,歡迎加入,創建屬於咱們本身的小圈子,一塊兒學python。