Django 的视图是处理 HTTP 请求并返回 HTTP 响应的核心部分,通常位于 views.py
文件中。以下是视图相关的关键知识点:
1. 视图函数 🚀
视图函数接收 request
对象,根据请求类型(如 GET、POST)处理逻辑,并返回 HttpResponse
或模板渲染结果。
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello, Django!")
2. 类视图(Class-Based Views) 🔄
Django 提供了基于类的视图简化开发,如 ListView
、DetailView
等。例如:
from django.views import View
from django.http import JsonResponse
class HelloWorldView(View):
def get(self, request):
return JsonResponse({"message": "Hello from class view!"})
使用类视图时,需继承
View
或其他特定基类。
3. 通用视图(Generic Views) 📦
通用视图封装了常见操作,如 CreateView
、UpdateView
,可减少重复代码。例如:
from django.views.generic import TemplateView
class AboutView(TemplateView):
template_name = "about.html"
适合快速搭建标准功能页面。
4. 视图的 URL 映射 🗺️
通过 urls.py
将路径与视图绑定,例如:
from django.urls import path
from . import views
urlpatterns = [
path("hello/", views.hello, name="hello"),
]
确保路径与视图函数名对应。
图解视图流程 📌
扩展阅读 📚
如需进一步理解视图与 URL 的关系,可参考 Django URL 配置指南。