如何在Django Rest Framework

时间:2017-09-20 18:07:03

标签: django django-rest-framework django-settings django-permissions

我的Django项目中有两个REST应用程序:

  1. api - 应为AllowAnyReadOnly
  2. apicrm - 应为rest_framework.permissions.IsAuthenticated
  3. 如何在Django Rest Framework中为整个应用程序设置此权限?

2 个答案:

答案 0 :(得分:0)

让当地的信息如下:

API

for(int i = 0; i < buttons.length; i++){do something with buttons[i]}

apicrm

class apiView(viewsets.ModelViewSet) .... {
  permission_classes = ()
  authentication_classes = ()
}

答案 1 :(得分:0)

我认为没有任何全局设置来定义应用的权限。 我在这里想到的是使用适当的权限类创建一个基本视图类。

示例

api app

class BaseApiViewSet(viewsets.ModelViewSet):
    permission_classes = (AllowAny, )

# inherit BaseApiViewSet in all other viewsets
class ViewSet1(BaseApiViewSet):
    # code as it is

apicrm app

class BaseApiCrmViewSet(viewsets.ModelViewSet):
    permission_classes = (IsAuthenticated, )

# similary, inherit from BaseApiCrmViewSet in all other viewsets