Django - 创建视图



视图函数,简称“视图”,只是一个 Python 函数,它接收一个 Web 请求并返回一个 Web 响应。此响应可以是网页的 HTML 内容、重定向、404 错误、XML 文档、图像等。例如:您使用视图来创建网页,请注意,您需要将视图与 URL 关联才能将其显示为网页。

在 Django 中,视图必须在应用的 views.py 文件中创建。

简单视图

我们将在 myapp 中创建一个简单的视图,显示“欢迎使用我的应用!”。

查看以下视图:

from django.http import HttpResponse

def hello(request):
   text = """<h1>welcome to my app !</h1>"""
   return HttpResponse(text)

在此视图中,我们使用 HttpResponse 渲染 HTML(您可能已经注意到,我们在视图中硬编码了 HTML)。要将此视图显示为页面,我们只需要将其映射到 URL(这将在后续章节中讨论)。

之前我们使用 HttpResponse 在视图中渲染 HTML。这不是渲染页面的最佳方法。Django 支持 MVT 模式,因此要使前面的视图类似于 Django - MVT,我们需要:

一个模板:myapp/templates/hello.html

现在我们的视图将如下所示:

from django.shortcuts import render

def hello(request):
   return render(request, "myapp/template/hello.html", {})

视图还可以接受参数:

from django.http import HttpResponse

def hello(request, number):
   text = "<h1>welcome to my app number %s!</h1>"% number
   return HttpResponse(text)

当链接到 URL 时,页面将显示作为参数传递的数字。请注意,参数将通过 URL 传递(在下一章中讨论)。

广告