Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django rest framework 特定视图的Rest框架权限_Django Rest Framework - Fatal编程技术网

Django rest framework 特定视图的Rest框架权限

Django rest framework 特定视图的Rest框架权限,django-rest-framework,Django Rest Framework,我想只有经过身份验证的用户才能添加、创建、删除。。。对于特定视图(不是所有视图) 这是我的设置.py [settings.py] REST_FRAMEWORK = { 'DEFAULT_PERMISSION_CLASSES': ( 'rest_framework.permissions.IsAuthenticatedOrReadOnly', ), 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_frame

我想只有经过身份验证的用户才能添加、创建、删除。。。对于特定视图(不是所有视图)

这是我的设置.py

[settings.py]

REST_FRAMEWORK = {
    'DEFAULT_PERMISSION_CLASSES': (
        'rest_framework.permissions.IsAuthenticatedOrReadOnly',
    ),
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework.authentication.TokenAuthentication',
    )
}
执行此操作后,意外地在每个视图中应用了IsAuthenticatedOrReadOnly权限

所以我加上这一行

'rest\u framework.permissions.AllowAny',

在views.py中

不需要权限的视图,添加此行

permission\u classes=(AllowAny,)

它工作得很好。但我想知道这是正确的方法吗

我只是在settings.py中插入了
'rest\u framework.authentication.TokenAuthentication',


但是为什么要对每个视图应用此权限?

是的,这是正确的做法,您可以为每个视图设置默认权限和视图特定权限

根据DRF文档,如果未在设置中设置默认权限,则默认为
AllowAny


有你问题的所有答案吗

Bernard Parah谢谢!)