2017-09-22 9 views
0
class CategoryViewSet(viewsets.ModelViewSet): 
    """ViewSet for the Category class""" 

    queryset = models.Category.objects.all() 
    serializer_class = serializers.CategorySerializer 
    permission_classes = [permissions.IsAuthenticated] 

スーパーユーザーのすべてのユーザーとポストのメソッドに対してgetメソッドを許可する方法を教えてください。すべてのユーザーにgetメソッドの許可を許可し、スーパーユーザーのpostメソッドをdjango rest APIでのみ許可する

答えて

1

機能の要求がPOSTGETかどうかを確認します。それが投稿の場合は、ユーザーの資格情報をチェックして、スーパーユーザーであるかどうかを確認できます。

def list(self, request): 
    if request.method == 'POST': 
     if request.user.is_superuser: 
      # let superuser do their thing 
     else: 
      # error! you're not allowed to do this! 
    elif request.method == 'GET': 
     # you're any user who is allowed to do their thing 
関連する問題