Django 遵循 MTV(模型-模板-視圖)模式進行 Web 開發。以下是每個組件的詳細資訊:
模型:定義資料結構並處理與資料庫的交互,讓您可以儲存和檢索資料而無需手動編寫 SQL 查詢。
範本:負責渲染 HTML 並將資料呈現給使用者。您可以編寫與 Django 模板語言 (DTL) 混合的 HTML 來顯示動態內容。
View:充當業務邏輯層。它連接模型和模板,處理用戶請求,與模型交互,並返回回應(通常是從模板呈現的 HTML)。
Django 的請求-回應週期如何運作:
第 1 步:在 Django 中建立新應用程式.
設定 Django 後(如上一篇文章所述),讓我們在專案中建立一個新應用程式。
運行這些命令:
cd mysite python3 manage.py startapp core
這會在您的 mysite 專案中建立一個名為 core 的應用程式。您的文件結構現在應如下所示:
. ├── core │ ├── admin.py │ ├── apps.py │ ├── __init__.py │ ├── migrations │ │ └── __init__.py │ ├── models.py │ ├── tests.py │ └── views.py ├── db.sqlite3 ├── manage.py └── mysite ├── asgi.py ├── __init__.py ├── settings.py ├── urls.py └── wsgi.py
第 2 步:在設定檔中註冊您的應用程式。
為了讓 Django 知道新的應用程序,您需要將其添加到 mysite/settings.py 中的 INSTALLED_APPS 中:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'core', # add this line ]
第 3 步:建立基本視圖.
讓我們建立一個傳回「Hello, World!」的簡單視圖。資訊.
在核心應用程式中開啟views.py並加入以下程式碼:
from django.http import HttpResponse def learn(request): return HttpResponse("Hello, World!")
第 4 步:將 URL 對應到視圖.
要透過 URL 存取此視圖,您需要將其對應到 core/urls.py 檔案中。如果該文件不存在,則建立該文件並添加以下內容:
from django.urls import path from . import views urlpatterns = [ path('learn/', views.learn, name='learn'), ]
接下來,將核心應用程式的 URL 包含在主 mysite/urls.py 檔案中:
from django.contrib import admin from django.urls import include, path urlpatterns = [ path('admin/', admin.site.urls), path('core/', include('core.urls')), # include the core app URLs ]
現在,如果您運行伺服器並訪問 http://127.0.0.1:8000/core/learn/,您應該會看到“Hello, World!”顯示。
第 5 步:建立並渲染範本
from django.shortcuts import render def learn(request): context = {'name': 'Django'} return render(request, 'hello.html', context)
此視圖現在將變數(名稱)傳遞給名為 hello.html 的範本。
第 6 步:建立範本目錄和 HTML 檔案.
在您的核心應用程式中,建立一個 templates 資料夾和一個 hello.html 檔案:
mkdir core/templates touch core/templates/hello.html
在hello.html中,加入以下HTML程式碼
Hello Template Hello, {{ name }}!
當您再次造訪學習 URL 時,您現在應該會看到「Hello, Django!」在瀏覽器中。
第七步:建立基本模型.
讓我們建立一個簡單的 Post 模型來儲存部落格文章。
在core/models.py中加入以下程式碼:
from django.db import models class Post(models.Model): title = models.CharField(max_length=100) content = models.TextField() def __str__(self): return self.title
這個Postmodel有兩個欄位:title和content。 __str__ 方法確保 Post 物件在 Django admin 或 shell 中顯示及其標題
第 8 步:將模型應用到資料庫.
若要在資料庫中建立對應的表,請執行以下命令:
python3 manage.py makemigrations python3 manage.py migrate
Django 現在將為 Post 模型建立一個資料庫表。
透過執行這些步驟,您已成功建立了一個包含模型、視圖和範本的基本 Django 應用程式。現在您可以透過添加更多功能來擴展此基礎,例如處理使用者輸入、改進設計以及使應用程式更具互動性。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3