使用 Django 建立 Web 應用程序,實用指南。 ?️ ???
膠囊 2:建立應用程式、視圖、範本和設定路線
大家好,同志們,歡迎回到我們的 Django 教學系列!又是一周了,我們需要服用本週的 KodeCapsule。在上一篇文章中,我們介紹了 Django 框架的基礎知識、它的架構、模型、視圖、模板以及如何在 Django 中啟動新專案。如果您還沒有閱讀上一篇文章,我建議您在繼續之前先回去閱讀那篇文章。所以,喝杯咖啡,讓我們開始吧。
簡介
Django 中的應用程式是什麼?
在 Django 中建立應用程式
為您的應用程式建立視圖
為您的應用程式建立 URL
為您的應用程式新增範本
結論
參考文獻
在本教程中,我們將深入建立和使用任何 Django 專案的核心元件。我們將了解如何在 Django 中建立應用程式、配置設定、建立視圖來處理請求以及設定 URL 路由。學完本教程,您應該明白
如何在 Django 中建立新應用程式
如何將此應用程式包含在您的專案設定中
如何為您的應用程式定義 URL 模式
如何寫視圖來顯示請求和回應
如何為您的應用程式新增範本
讓我們開始吧! ! ! ! ! ! !
django 中的應用程式是執行特定功能的模組。應用程式可以像專案中的功能一樣簡單,例如聯絡表單,也可以像部落格或支付系統等成熟的元件一樣簡單。應用程式被設計為可在不同項目中重複使用。將程式碼組織到應用程式中可以實現程式碼的可重複使用性、可維護性和可擴充性。應用程式和專案之間的區別在於,應用程式在專案中執行特定功能,並且可以在多個專案中使用,但專案由特定網站的配置和應用程式的集合組成。應用程式的一些關鍵特徵是:
模組化:Django 應用程式本質上是模組化的,這意味著您可以獨立開發和測試您的應用程式並重複使用它們。這使您的專案更有組織性和可管理性。
可重複使用性:由於應用程式是獨立的,因此您可以輕鬆地在其他 Django 專案中重複使用它們。例如,您可以為一個專案建立一個部落格應用程序,然後在另一個專案中使用相同應用程式而不進行修改。
關注點分離:每個應用程式處理項目的特定方面。這種分離使得管理應用程式的不同部分變得更加容易。
封裝:應用程式封裝模型、視圖、範本、靜態檔案和其他與特定功能相關的元件,使它們在自己的目錄中組織起來。
在上一篇文章中我們已經設定了我們的專案。我們將創建我們的第一個應用程式。這個應用程式將是一個部落格應用程式。
1.要建立應用程序,請導航至專案資料夾和終端並執行此命令。確保您已啟動虛擬環境。
python manage.py startapp 部落格
此命令建立一個新目錄,其中包含以下資料夾結構中的所有必要的設定檔:
├──部落格/
│ ├── 遷移/
│ │ └──init.py
│ ├── init.py
│ ├── admin.py
│ ├── apps.py
│ ├── models.py
│ ├──測試.py
│ └──views.py
我。 migrations/:此資料夾儲存您應用程式的所有資料庫遷移
二. init.py:這是一個空文件,通知 python 將目錄視為 python 套件。
三. admin.py:django 管理介面的設定檔。 admin.py 檔案的功能是在 django 管理面板中註冊您的應用程式模型。稍後我們會看看 Django admin
四。 apps.py:這包含應用程式的配置,也可以包含應用程式的元資料。
V. models.py:此腳本是我們為應用程式最佳化資料模型的地方。
六。 test.py:test.py 腳本是您為應用程式編寫測試案例的地方
七。 views.py:此腳本包含您為應用程式定義的視圖。這些視圖處理您的應用程式的業務邏輯。
2.將您的部落格應用程式新增至專案設定中已安裝的應用程式清單。
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', #my apps 'blog', ]
視圖在您的應用程式中發揮著重要作用。應用程式的業務邏輯在視圖中定義。視圖充當表示層和資料層之間的黏合劑。 Django 中有兩種主要類型的視圖,基於函數的視圖和基於類別的視圖(有關這方面的更多詳細信息,請參閱後續文章)。在本教程中,我們將堅持使用基於函數的視圖。
1.在部落格應用程式中開啟views.py檔案
2.從http套件匯入HttpResponse
從 django.http 導入 HttpResponse
3.定義一個名為 home 的函數(您可以隨意命名該函數)。函數將傳回一個 HttpResponse
from django.http import HttpResponse def home(request): return HttpResponse("<h1>Welcome to the Home Page</h1>")
為了讓使用者存取網路應用程式的不同部分,您必須為應用程式的每個特性/功能定義存取點;在 Django 中,您可以透過為應用程式建立 url 來實現這一點。 URL 模式會對應到特定視圖。
在 Django 中,您可以在專案 urls.py 腳本中定義專案的所有 url,但最佳實踐是為專案中的各個應用程式建立單獨的 urls.py 腳本。
1.在部落格應用程式目錄中建立一個 urls.py 腳本。
2.從django中的urls套件中導入path函數。 path 函數接受三個參數:route、view、kwargs 和 name,並傳回一個元素。您可以在這裡閱讀有關此功能的更多資訊。
來自 django.urls 導入路徑
3.導入應用程式的視圖
來自 .導入視圖
4.建立一個名為 urlpatterns 的列表,定義主頁的 url,該列表與項目 urlpatterns 中的列表類似。
urlpatterns = [ 路徑('',views.home,name='home_page' ]
5.更新項目的url。為了使您的應用程式可訪問,您需要更新主項目 urls.py 。開啟專案的 urls.py 檔案並從 urls 套件中匯入 include 函數並更新 urlpatterns 清單。
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('blog.urls')), ]
6.之後儲存所有檔案並使用常用指令啟動開發伺服器
python manage.py runserver
在瀏覽器中開啟 url,預設的 django 主頁會更改 home 函數的回應。
在上一節中,主視圖中的休息返回包含 HTML 標頭標記的 http 回應。如果我們想要返回包含大量 HTML 標籤的整個頁面,我們該怎麼辦?這就是 Django 中的模板的用武之地。 Django 範本可讓您定義將在使用者瀏覽器中顯示的 HTML 結構。範本可讓您使用 Django 模板語言 (DTL) 產生動態內容。在 Django 中,您可以將模板放在應用程式中或應用程式的根目錄中(有關 django 模板的更多詳細信息,請參閱我即將發表的文章)。
1.建立範本目錄:在您的部落格應用程式中建立範本目錄。在範本目錄中建立另一個名為 blog 的目錄。
2.創建模板。建立名為
的 HTML 文件
myproject/ blog/ templates/ blog/ index.html
3.使用以下程式碼更新index.html檔:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Blog App</title> </head> <body> <h1>Welcome to the Home page</h1> <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Voluptas maiores, modi facilis veritatis amet eum labore odio sit nemo eius?</p> </body> </html>
4.更新主視圖:開啟視圖檔案並從捷徑匯入渲染。更新函數體以使用 render 函數傳回 index.html。
from django.shortcuts import render def home(request): return render(request, 'blog/index.html')
儲存變更並重新載入瀏覽器。
本週的 Kodecapsule 已經結束了。在本文中,我們研究如何在 django 中建立您的第一個應用程式、在 django 中建立視圖、配置 url 和渲染範本。在下一篇文章中,我們將詳細介紹模型和模板。
請務必留意本系列中的文章,因為我將帶您從零到 Django 專家。
隨時歡迎您的建議和意見。
庫塞‧韋沃利亞莫
https://docs.djangoproject.com/en/5.0/topics/http/views/
https://docs.djangoproject.com/en/5.0/topics/templates/
https://docs.djangoproject.com/en/5.0/ref/urls/#include
https://docs.djangoproject.com/en/5.0/ref/urls/#path
https://www.w3schools.com/django/django_create_app.php
以上是Django Web 框架初學者指南:建立應用程式、檢視、設定 URL 和模板的詳細內容。更多資訊請關注PHP中文網其他相關文章!