2014-03-13 70 views
0
@api_view(['GET', 'POST']) 
@csrf_exempt 
def index(request): 
    if request.method == 'GET': 
    queryset = Test.objects.all() 
    return render(request, 'rest_framework/index.html', {'request':request, 'queryset':queryset}) 
    elif request.method == 'POST': 
    post_mutable = request.POST.copy() 
     serializer = TestSerializer(data=request.DATA) 
    serializer.context = {'request': request} 
     if serializer.is_valid(): 
      serializer.data['test'] = "testing" 
      serializer.save() 
      return Response(serializer.data, status=status.HTTP_201_CREATED) 
     return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) 

如何在保存前更改數據值?我想更改TextField「測試」。更改保存前的POST值

+0

請修復您的縮進。 –

回答

0

您可以覆蓋TestSerializer類上的.save_object(obj)方法。見docs