1

我正在使用 Django REST 框架viewsets.ModelViewSet来列出、创建、更新和删除表行。对于以下Tasks模型,它工作正常。

但它只允许列出、创建、更新和删除自己的条目(即资源所有者)或者用户应该是超级用户。我想让这个 API 让其他用户可以查看、修改和删除,而不管创建者是谁。简而言之,所有经过身份验证的用户都可以查看/编辑任何人的条目。有没有办法做到这一点?

视图.py

class TasksViewSet(viewsets.ModelViewSet):

    queryset = Tasks.objects.all()
    serializer_class = TaskSerializer
    filter_backends = (filters.SearchFilter, filters.OrderingFilter)
    permission_classes = [IsAuthenticated]

设置.py

REST_FRAMEWORK = {
    'DATETIME_FORMAT': "%m/%d/%Y %H:%M:%S",
    'DATE_FORMAT': "%m/%d/%Y",
    'DEFAULT_PERMISSION_CLASSES': (
        'rest_framework.permissions.IsAuthenticated',
    ),
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'oauth2_provider.ext.rest_framework.OAuth2Authentication',
    ),
    'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination',
    'PAGE_SIZE': 50,
    'EXCEPTION_HANDLER': 'app_utils.utils.custom_exception_handler',
    'DEFAULT_RENDERER_CLASSES': (
        'rest_framework.renderers.JSONRenderer',
    ),
}
4

0 回答 0