Python django rest框架断言错误

Python django rest框架断言错误,python,django-rest-framework,Python,Django Rest Framework,AssertionError:当序列化程序被传递一个数据关键字参数时,在尝试访问序列化的数据表示之前,必须调用.is\u valid()。 您应该首先调用.is\u valid(),或者访问.initial\u data views.py: from rest_framework.views import APIView from rest_framework.response import Response from drfw.serializers import NameSerializer

AssertionError:当序列化程序被传递一个
数据
关键字参数时,在尝试访问序列化的
数据
表示之前,必须调用
.is\u valid()
。 您应该首先调用
.is\u valid()
,或者访问
.initial\u data

views.py:

from rest_framework.views import APIView
from rest_framework.response import Response
from drfw.serializers import NameSerializers
class restapiView(APIView):
    def get(self,request,*args,**kwargs):
        alphabets=['A','B','C','D','E']
        return Response({'msg':'latters','alphabets':alphabets})
    def post(self,request,*args,**kwargs):
        serializer=NameSerializers(data=request.data)
        if serializer.is_valid:
            name=serializer.data.get('name')
            msg='Hello{}'.format(name)
            return Response({'msg':msg})
        else:
            return Response(serializer.errors,status=400)
serializers.py:

from rest_framework import serializers
class NameSerializers(serializers.Serializer):
    name=serializers.CharField(max_length=30)

是有效的
是一种方法。所以你需要给它打电话

if serializer.is\u valid:
替换为
if serializer.is\u valid():