django-内置装饰器

Posted hylone

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django-内置装饰器相关的知识,希望对你有一定的参考价值。

django-内置装饰器

1、显示视图的请求方式 from django.views.decorators.http import ...

  • require_http_methods 需要自己指定要限制的请求方式
  • require_GET 视图只能以 get 方式访问
  • require_POST 视图只能以 post 方式访问
  • require_safe 视图以 get , head 两种方式进行访问

2、在视图上添加 事务环境 from django.db.transcation import atomic

  • 1、在视图上添加 @atomic
  • 2、也可以在配置数据源的时候,直接添加事务
DATABASES = {
    'default': {
        ......
        'ATOMIC_REQUESTS':True
    }
}

3、CSRF(跨站请求伪造)

  • 1、在form 表单中, 添加 一个 {% csrf_token %} 标签
  • 2、如果认为该请求是安全的,可以绕过CSRF的检测,只需要在 视图上添加一个装饰器
    • from django.views.decorators.csrf import csrf_exempt
    • 在视图上使用 @csrf_exempt 即可绕过 csrf 中间件的令牌认证

以上是关于django-内置装饰器的主要内容,如果未能解决你的问题,请参考以下文章

Django中视图的多个装饰器:执行顺序

112.限制请求的method装饰器

python使用上下文对代码片段进行计时,非装饰器

django 内置“信号”机制和自定义方法

装饰器-内置函数

python基础--定义装饰器(内置装饰器)