Я хочу закодировать данные и создать метод публикации, используя requests
и drf
, поэтому пример:
class ProjectViewSet(viewsets.ModelViewSet):
logger = logging.getLogger('django')
"""
API
"""
queryset = Project.objects.all()
serializer_class = ProjectSerializer
filter_backends = (filters.OrderingFilter,
filters.SearchFilter, DjangoFilterBackend)
filterset_class = ProjectFilter
ordering_fields = ('name', 'owner', 'project')
ordering = ('name')
search_fields = ['name']
# create new execution for this project
def create(self, request):
serializer = self.serializer_class(data=request.data)
if serializer.is_valid():
encode_data = json.dumps(serializer)
response = requests.post(
url='{}/process'.format(EXAMPLE_URL),
json=encode_data,
headers=headers
)
logging.debug(f"{self.response}")
return Response({'response': response})
Ошибка для этого
Object of type SerializerMetaclass is not JSON serializable
и теперь я немного запутался, полагаю, мне нужно кодировать данные, потому что кодирование JSON выполняется в объекте Response, но я не понимаю ошибки, поэтому кто-то может объяснить, что здесь не так, спасибо.