English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Criação de Visões Django

As funções de visão, ou abreviadamente "view", são funções Python simples que aceitam uma solicitação da Web e retornam uma resposta da Web. Esta resposta pode ser o conteúdo HTML de uma página da Web, ou uma redireção, ou404Erros, ou documentos XML, ou imagens/Páginas, por exemplo: use visões para criar páginas, note que é necessário associar uma visão a uma URL e vê-la como uma página da web.
Em Django, as visões devem ser criadas no arquivo views.py do aplicativo.

Visão simples

Vamos criar uma visão simples no myapp para exibir: "welcome to w3codebox !"

Ver a visão a seguir −

# Nome do Arquivo: example.py
# Copyright : 2020 By w3codebox
# Autor por: pt.oldtoolbag.com
# Data : 2020-08-08
from django.http import HttpResponse
 def hello(request):
    text = """<h1>welcome to w3codebox !/h1"""
    return HttpResponse(text)

Nesta visão, usamos HttpResponse para exibir HTML (pode ter notado que codificamos HTML diretamente na visão). Nesta visão, só precisamos mapeá-lo para uma página de URL (isto será discutido em capítulos futuros).

Usamos HttpResponse antes de renderizar o HTML da visão. Isso não é a melhor maneira de renderizar uma página da web. Django suporta o modelo MVT, que primeiro renderiza a visão, antes de Django. - MVT é o que precisamos -

Um arquivo de modelo: myapp/templates/hello.html

Agora, o conteúdo da nossa visão é o seguinte -

# Nome do Arquivo: example.py
# Copyright : 2020 By w3codebox
# Autor por: pt.oldtoolbag.com
# Data : 2020-08-08
from django.shortcuts import render
 def hello(request):
    return render(request, "myapp/template/hello.html", {})

Parâmetros que a visão pode aceitar -

# Nome do Arquivo: example.py
# Copyright : 2020 By w3codebox
# Autor por: pt.oldtoolbag.com
# Data : 2020-08-08
from django.http import HttpResponse
 def hello(request, number):
    text = "<h1>welcome to my app number %s !</h1>"% number
    return HttpResponse(text)

Quando conectado a um endereço da Internet, a página exibirá o valor passado como parâmetro. Atenção, o parâmetro será passado via URL (discutido no próximo capítulo).