django 视图中常用的操作

请求方法的限制

django内置了请求方法的限制,代码放在django.views.decorators.http中,主要有4个装饰器来实现

require_http_methods

这个装饰器接收一个允许请求方法的列表

from django.views.decorators.http import require_http_methods


@require_http_methods(["GET","POST"])
def index(request):

    books = Book.objects.all()
    context = {
        "books":books
    }
    return render(request,"index.html",context=context)

require_GET

这个装饰器是限制视图访问的请求方式是GET

from django.views.decorators.http import require_GET

 @require_GET
 def my_view(request):
     pass

require_POST

这个装饰器是限制视图访问的请求方式是POST

 from django.views.decorators.http import require_POST

 @require_POST
 def my_view(request):
     pass

require_safe

这个装饰器是限制视图访问的请求方式是GET和HEAD

from django.views.decorators.http import require_safe

 @require_safe
 def my_view(request):
     pass
02-11 16:39