Django - 创建视图
视图函数,或简称视图,简单来说就是一个 Python 函数,它接收一个 web 请求并返回一个 web 响应。这个响应可以是网页的 HTML 内容、重定向、404 错误、XML 文档、图像等。例如:你使用视图来创建网页,请注意,你需要将视图关联到一个 URL 才能将其视为网页。
在 Django 中,视图必须在 app 的 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 传递(这将在下一章中讨论)。