iT邦幫忙

2021 iThome 鐵人賽

DAY 16
0

在系列文章剛開始時我們有介紹過 Django 的 MTV 架構,再來幫大家複習一下:

https://ithelp.ithome.com.tw/upload/images/20210929/20140477iAzuVBHTyJ.png

昨天我們介紹了 MTV 當中的 M -- Model 的部分。今天則要和大家介紹 View

Url, View 介紹

當一個 Request 進來網站時,首先會經過urls.py,urls.py會按照開發者編寫的邏輯,將Request分配到相對的 View,而 View 將處理此 Request 進行相對應的動作。

我們將建立好的app 資料夾打開,我們可以看到已經有 urls.py位於其中,檔案內容為

from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
]

這邊已經寫好一個 path ,就是我們開啟的 admin 的路徑,當我們輸入 "網址/admin"時,系統會將它導入到 admin.site.urls 中,所以你應該可以理解,為什麼我們可以直接使用 admin 頁面了吧,因為Django 幫我們內建建立完成了。

編寫 View

我們在 app 資料夾底下新增一個 views.py 的檔案

建立我們的第一個 view

from django.http import HttpResponse

# Create your views here.
def hello(request):
    return HttpResponse('Hello World ! ')

當Request 送進這個 function 時,我們回傳 " Hello World ! "

在 urls.py 裡面加入路徑

from django.contrib import admin
from django.urls import path
from app.views import hello

urlpatterns = [
    path('admin/', admin.site.urls),
    path('hello/', hello),
]

意思是有人輸入 "hello/" 這個網址的話,就將它導向到 hello 這個 view 中。
而 view 收到後會回傳 " Hello World ! ",使用者便可以在網頁上看到 " Hello World ! " 的字樣了!

結語

以上是簡單的 urls.py 以及 views.py 的運作邏輯。
透過有系統性的管理,可以讓不同業務由不同的程式進行處理,分工明確清楚,不會不知道要去哪裡找程式,有共同的規範和寫法,也可以更有效的管理及進行多人協作。


上一篇
[Day15] - Django Model - 管理資料庫之良伴
下一篇
[Day17] - Django-REST-Framework 第一個 API 實作
系列文
使用Django Rest Framework, Docker, Docker Compose 製作後端服務應用30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言