0
rest_framework_bulkを使用したPOSTのレスポンスの変更方法を知りたいのですが、デフォルトでは常に同じオブジェクトまたはオブジェクトが返されるためですサービスによってそれに送られた配列。Django REST FrameworkでのPOSTからのレスポンスの生成方法Bulk
モデル:
class employee():
name = models.CharField(max_length=4, verbose_name='name')
profession = models.CharField(max_length=4, verbose_name='profession')
userCreation = models.ForeignKey(userCreation, verbose_name='user')
class Meta:
verbose_name='employee'
def __unicode__(self):
return self.name
シリアライザ:
from django.forms import widgets
from .models import employee
from rest_framework import serializers
from rest_framework_bulk import (BulkListSerializer, BulkSerializerMixin, ListBulkCreateUpdateDestroyAPIView,)
class employeeSerializer(BulkSerializerMixin, serializers.ModelSerializer):
class Meta(object):
relation_user = serializers.ReadOnlyField(source='user.username')
model = employee
fields = ('id', 'name', 'profession', 'relation_user')
ビュー:
from django.shortcuts import render
from .models import employee
from .serializers import employeeSerializer
from rest_framework import generics
from rest_framework_bulk import ListBulkCreateAPIView
class createEmployee(ListBulkCreateAPIView):
queryset = employee.objects.all()
serializer_class = employeeSerializer
def perform_create(self, serializer):
serializer.save(relation_user=self.request.user)
URL:
from django.conf.urls import url
from rest_framework.urlpatterns import format_suffix_patterns
from employee import views
urlpatterns = [url(r'^api/createEmployee/$', views.createEmployee.as_view())]
urlpatterns = format_suffix_patterns(urlpatterns)
def perform_create(self, serializer):
serializer.save(relation_user=self.request.user)
これは非常にうまく機能し、私は、RESTサービス
{
name: 'Jhon',
profession: 'Medic'
}
に送ることを問題なく従業員、 JSONを作成し、これが答えです:私はレスポンスのことができるようにしたいと思い
{
name: 'Jhon',
profession: 'Medic'
}
計算されたもの、または単に作成された従業員を示すメッセージとして異なるものを置く。
私はそれはあなたがあなたのビューでcreate
メソッドをオーバーライドすることができ
return Response(succes='Employee successfully created')