Ни один тип объекта не имеет атрибута delete () - PullRequest
1 голос
/ 19 февраля 2020

получая ошибку: объект 'NoneType' не имеет атрибута 'delete'

class LogoutViewSet(viewsets.ViewSet):

    def (self,request):
        user_token=request.auth
        refresh_token=RefreshToken.objects.filter(access_token=user_token)
        refresh_token.delete()
        user_token.delete()
        return Response({'done':True}) 

Ответы [ 2 ]

0 голосов
/ 19 февраля 2020

class LogoutViewSet (viewsets.ViewSet):

def list(self,request):
    try:
        user_token=request.auth
        print('TOKEN',request.auth)
        refresh_token=RefreshToken.objects.filter(access_token=user_token)
        refresh_token.delete()
        user_token.delete()
        return Response({'done':True}) 
    except Exception as error:
        return Response({"message": str(error), "success": False},
        status=status.HTTP_200_OK)

затем следующие шаги

1: в почтальоне выберите GET 2: тип заголовка unser (i) = ключ = тип авторизации (ii) ) = Значение = однонаправленный канал CMEIe8hv8eMYvAcLyTGpAlXMpUb0Qz (токен)

0 голосов
/ 19 февраля 2020

Поскольку request.auth не является QuerySet, вы не можете использовать метод delete() для него.

class LogoutViewSet(viewsets.ViewSet):

def (self,request):
    user_token=request.auth
    refresh_token=RefreshToken.objects.filter(access_token=user_token)
    refresh_token.delete()
    user_token = None
    return Response({'done':True})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...