Я получаю ошибку Assertion в представлениях моего проекта django

AssertionError: Ожидалось, что из представления будет возвращено Response, HttpResponse или HttpStreamingResponse, но получено <class 'NoneType'>

Код:-

from rest_framework.decorators import api_view
from user_app.api.serializers import RegistrationSerializer

@api_view(['POST',])
def registration_view(request):
    if request.method == 'POST':
        serializer = RegistrationSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return serializer.data

Раньше он показывал ошибку: TypeError: User() получил неожиданные аргументы ключевого слова: 'password2'

>

Затем я удалил поле password2 и снова добавил его, теперь оно показывает ошибку Assertion Error.

Весь ваш код в порядке, только нужно вернуть ответ вот так...

from rest_framework.response import Response

@api_view(['POST',])
def registration_view(request):
    if request.method == 'POST':
        serializer = RegistrationSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response({'data':serializer.data,'message':'Data Created'}, status=status.HTTP_201_CREATED) # need to return Response
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Вернуться на верх