Where to alter the response of POST request in Django REST Framework
我有一个视图,它继承自
当我发送请求时,它返回创建的对象的JSON表示。
我想从响应中包装数据,如下所示:
1 2 3 4 5 6 7 8 | {'data' : { 'field1' : 'value1' , 'field2' : value2 , etc..... } , 'errors' : None , 'message': [{} , {}] , 'result' : 'OK' , } |
修改返回数据的最佳位置在哪里?
我尝试创建一个自定义渲染器,如下所示:将根元素添加到json响应(django-rest-framework)但它永远不会被调用。
那是因为它只与GET请求有关而不是帖子吗?
我认为这种结构不太相关:
1 | return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) |
或者用
然而,如果你想保留这个结构,这个工作可以在你看来完成。 示例:
1 2 3 4 5 6 | return Response({ 'data': serializer.data, 'errors': serializer.errors, # `.is_valid()` must be called 'message': [{} , {}], 'result':'OK' }) |