相关疑难解决方法(0)

Django-Rest-Framework AssertionError HTTPresponse预期

当我使用curl在终端上执行以下命令时

curl -X POST http://myuser:mypassword@myweb.com:8000/call/make-call/ -d "tutor=1&billed=1"
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

AssertionError at/call/make-call /期望a Response, HttpResponse或者HttpStreamingResponse从视图返回,但是收到了<type 'NoneType'>

我的views.py是

@api_view(['GET', 'POST'])
def startCall(request):

    if request.method == 'POST':

        serializer = startCallSerializer(data=request.DATA)

        if serializer.is_valid():

            serializer.save()

            return Response(serializer.data, status=status.HTTP_201_CREATED)

        else:

            return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Run Code Online (Sandbox Code Playgroud)

我的serializer.py是

class startCallSerializer(serializers.ModelSerializer):

    class Meta:
        model = call
        fields = ('tutor', 'billed', 'rate', 'opentok_sessionid')
Run Code Online (Sandbox Code Playgroud)

我的urls.py是

urlpatterns = patterns(
    'api.views',
    url(r'^call/make-call/$','startCall', name='startCall'),
)
Run Code Online (Sandbox Code Playgroud)

python django-rest-framework

8
推荐指数
1
解决办法
2万
查看次数

标签 统计

django-rest-framework ×1

python ×1