“Decorators” para “view”Link para este cabeçalho

O Djanfo fornece muitos “decorators” que podem ser aplicados em “views” para suportar várias características HTTP.

Métodos HTTP permitidosLink para este cabeçalho

Os “decorators” em django.views.decorators.http podem ser usados para restringir acesso a “views” baseado no método de requisição . Estes “decorators” retornarão uma django.http.HttpResponseNotAllowed se a condição não for atendida.

require_http_methods(request_method_list)Link para esta definição

“Decorator” que requer que uma “view” aceite somente alguns métodos de requisição em particular. Uso:

Code
from django.views.decorators.http import require_http_methods

@require_http_methods(["GET", "POST"])
def my_view(request):
    # I can assume now that only GET or POST requests make it this far
    # ...
    pass

Note que o método de requisição deve estar em maiúsculas.

require_GET()Link para esta definição

“Decorator” que requer que a “view” somente aceite o método GET.

require_POST()Link para esta definição

“Decorator” que requer que a “view” somente aceite o método POST.

require_safe()Link para esta definição

“Decorator” que requer que a “view” somente aceite os métodos GET e HEAD. Estes métodos são geralmente considerados “seguros” porque eles não tem a importância de tomar uma ação além de retornar o conteúdo requisitado.

Processamento condicional de “view”Link para este cabeçalho

Os seguintes “decorators” em django.views.decorators.http podem ser usados para controlar o comprtamento do “cache” em algumas “views” em particular.

condition(etag_func=None, last_modified_func=None)Link para esta definição
etag(etag_func)Link para esta definição
last_modified(last_modified_func)Link para esta definição

Estes “decorators” podem ser usados para gerar ETag e cabeçalhos Last-Modified; veja processamento condicional de “view”.

Compressão GZipLink para este cabeçalho

Os “decorators” em django.views.decorators.gzip controlam a compressão de conteúdo baseados em cada “view”.

gzip_page()Link para esta definição

O “decorator” comprime o conteúdo se o navegador permitir compressão “gzip”. Ele define o cabeçalho Vary de acordo, então aquel cache irá basea seu armazenamento no cabeçalho Accept-Encoding.

Variação de cabeçalhosLink para este cabeçalho

Os “decorators” em django.views.decorators.vary podem ser usados para controlar o “cacheamento” baseado em cabeçalhos específicos de requisições.

vary_on_headers(*headers)Link para esta definição

O cabeçalho Vary define quais cabeçalhos de requisições um mecânismo de “cache” deve levar em consideração ao construir sua chave de “cache”.

Veja usando cabeçalhos “vary”.

“Caching” – cacheandoLink para este cabeçalho

Os “decorators” em django.views.decorators.cache controlam o “cacheamento” do lado do servidor e do cliente.

never_cache(view_func)Link para esta definição

O decorator adiciona um cabeçalho Cache-Control: max-age=0, no-cache, no-store, must-revalidate para que uma resposta indique que uma página nunca deve ser “cacheada”.