1

I'm creating a Django back-end with token authentication. I am currently running into this issue when registering a user using postman. Despite the response I receive the user-account and token still gets created successfully.

Response:

DoesNotExist at /api/accounts/register
Token matching query does not exist.

API registration View

@api_view(['POST'])
def registration_view(request):
    if request.method == 'POST':
        serializer = AccountRegistrationSerializer(data=request.data)
        data = {}
        if serializer.is_valid():
            account = serializer.save()
            data['response'] = "successfully registered a new user."
            token = Token.objects.get(user=account).key
            data['token'] = token
        else:
            data = serializer.errors
        return Response(data)

Accounts.models

@receiver(post_save, sender=settings.AUTH_USER_MODEL)
def create_auth_token(sender, instance=None, created=False, **kwargs):
    if created:
        Token.objects.create(user=instance)

Traceback:

Traceback:

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\django\core\handlers\exception.py" in inner
  34.             response = get_response(request)

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\django\core\handlers\base.py" in _get_response
  115.                 response = self.process_exception_by_middleware(e, request)

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\django\core\handlers\base.py" in _get_response
  113.                 response = wrapped_callback(request, *callback_args, **callback_kwargs)

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\django\views\decorators\csrf.py" in wrapped_view
  54.         return view_func(*args, **kwargs)

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\django\views\generic\base.py" in view
  71.             return self.dispatch(request, *args, **kwargs)

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\rest_framework\views.py" in dispatch
  505.             response = self.handle_exception(exc)

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\rest_framework\views.py" in handle_exception
  465.             self.raise_uncaught_exception(exc)

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\rest_framework\views.py" in raise_uncaught_exception
  476.         raise exc

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\rest_framework\views.py" in dispatch
  502.             response = handler(request, *args, **kwargs)

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\rest_framework\decorators.py" in handler
  50.             return func(*args, **kwargs)

File "C:\dev\Harryandsam\harryandsam\accounts\api\views.py" in registration_view
  19.             token = Token.objects.get(user=account).key

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\django\db\models\manager.py" in manager_method
  82.                 return getattr(self.get_queryset(), name)(*args, **kwargs)

File "C:\Users\liamr\.virtualenvs\Harryandsam-e8SFW3Fu\lib\site-packages\django\db\models\query.py" in get
  408.                 self.model._meta.object_name
4

0 回答 0