Функция представления, или кратко “представление”, это просто функция Python, которая принимает веб-запрос и возвращает веб-ответ. Этим ответом может быть HTML-содержимое веб-страницы, перенаправление, ошибка 404, XML-документ, изображение и т.д. Например, вы используете представление для создания веб-страницы, обратите внимание, что вам нужно связать представление с URL, чтобы увидеть созданную веб-страницу.
В Django представления должны создаваться в файле views.py.
Простое представление
Мы создадим простое представление, чтобы сказать “Welcome to my app!”
Обратите внимание на следующее представление:
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 (это будет рассмотрено в следующей главе).
Источник: Django — Creating Views