首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >限制用户访问APIView

问限制用户访问APIView
EN

Stack Overflow用户
提问于 2018-01-16 17:20:15
回答 1查看 265关注 0票数 1

我想要获取用户的详细信息:

代码语言:javascript
复制
class UserDetailAPIView(RetrieveAPIView):
    """
    User detail information
    """
    queryset = User.objects.filter(is_valid=True).exclude(status=4)
    serializer_class = UserDetailSerializer
    lookup_field = "username"

我想限制其他用户访问此APIView,我只希望管理员用户和用户自己访问。

如何限制这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-16 17:32:09

您应该像这样定义自己的权限class.something:

代码语言:javascript
复制
from rest_framework import permissions


class OwnerProfilePermission(permissions.BasePermission):
    """object lvl permissions for owner """
    def has_object_permission(self, request, view, obj):
        return obj.user == request.user

在您的视图中包含permission_classes .see DRF文档。http://www.tomchristie.com/rest-framework-2-docs/api-guide/permissions

并且你选择的类基视图很重要。http://www.tomchristie.com/rest-framework-2-docs/api-guide/generic-views

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48277771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档