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 提供了基于类的视图简化开发,如 ListViewDetailView 等。例如:

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) 📦

通用视图封装了常见操作,如 CreateViewUpdateView,可减少重复代码。例如:

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"),
]

确保路径与视图函数名对应。

图解视图流程 📌

Django_views_flow

扩展阅读 📚

如需进一步理解视图与 URL 的关系,可参考 Django URL 配置指南