Aula 06: Function-based Views
urls.py
request
from django.shortcuts import render def index(request): return render(request, "index.html")
def minha_view(request, usuario)
<tipo:variavel>
tipo
str
int
slug
uuid
path
variavel
# url.py ... path("fotos/<int:id_foto>/", views.fotos, name="fotos"), ... # views.py ... def fotos(request, id_foto): print(f"O id da foto é {id_foto}") ...
<a href="{% url 'fotos' id_foto %}"
{% url 'fotos' id_foto id_usuario %}
{% url 'meuapp:fotos' id_foto id_usuario %}
request.method
GET
POST
request.GET
request.POST
request.FILES
request.user
... def minha_view(request): if request.method == "GET": print("Essa página foi acessada com uma requisição GET") ...
url-original?chave=valor&outrachave=outrovalor
query_dict["chave"]
query_dict.get("chave")
.get()
http://127.0.0.1:8000/usuarios?ordenar=idade&cidade=SPP
... def usuarios(request): query_dict = request.GET print(f"O usuarios serão ordenados por {query_dict['ordenar']}") print(f"O usuarios são da cidade {query_dict.get('cidade')}") ...
return render(request, 'template.html')
redirect(nome-da-url)
def minha_view(request): if not request.GET.get("status"): print("Não veio o status na querystring!") return redirect('nomedoapp:nomedaview') # o nomedoapp é opcional!