iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 19
0
Modern Web

來個Django Web介面測試吧系列 第 19

來個Django Web介面測試吧:Day19-Django 重構設計(3)

創建公用介面---視圖

繼續編寫投票應用,並專註於如何創建公用界面——也被稱為“視圖”。

概況

  • Django 中的視圖(view)的概念是「一個具有相同功能模板的網頁的集合」。比如,在一個blog應用中,可能會創建幾個視圖如下:
  1. blog首頁——展示最近的幾項內容。
  2. 內容詳情頁——詳細展示某項內容。
  3. 以年為單位的歸檔頁——展示選中的年份里各個月份創建的內容。
  4. 以月為單位的歸檔頁——展示選中的月份里各天創建的內容。
  5. 以天為單位的歸檔頁——展示選中天里創建的所有內容。
  6. 評論處理器——用於響應為一項內容添加評論的操作。
  • 而在投票應用中,需要下列幾個視圖:
  1. 問題索引頁——展示最近的幾個投票問題。
  2. 問題詳情頁——展示某個投票的問題和不帶結果的選項列表。
  3. 問題結果頁——展示某個投票的結果。
  4. 投票處理器——用於響應用戶為某個問題的特定選項投票的操作。
  • 在 Django 中,網頁和其他內容都是從視圖派送而來。每一個視圖表現為一個簡單的 Python 函數(或者說方法,如果是在基於類的視圖里的話)。Django 將會根據用戶請求的 URL 來選擇使用哪個視圖(更準確的說,是根據 URL 中功能變數名稱之後的部分)。

例如上網的過程中,很可能看見過像這樣美麗的 URL: "ME2/Sites/dirmod.asp?sid=&type=gen&mod=Core+Pages&gid=A6CD4967199A42D9B65B1B" 。

別擔心,Django 里的 URL 規則 要比這優雅的多!

一個 URL 模式定義了某種 URL 的基本格式——舉個例子:/newsarchive///。

為了將 URL 和視圖關聯起來,Django 使用了 'URLconfs' 來配置。URLconf 將 URL 模式映射到視圖。


上一篇
來個Django Web介面測試吧:Day18-Django 重構設計(2)
下一篇
來個Django Web介面測試吧:Day20-Django 重構設計(4)
系列文
來個Django Web介面測試吧30

尚未有邦友留言

立即登入留言