我想创建一个接受这两个jsons的序列化器/视图:
{
"foo": "bar",
"foobar": "bazz",
"info": [
{
"field": "value",
"field2": "value2"
}
]
}
和
{
"foo": "bar",
"foobar": "bazz",
}
" info"节点是可选的。
现在我试过了:
这两种解决方案都不起作用。这意味着默认" is_valid()"并不适用于两个jsons。
有什么办法以干的方式这样做?
我为视图扩展了APIView,为Serializer扩展了serializers.Serializer,但没有多少代码可供展示。
class InfoSerializer(serializer.Serializer):
field = serializer.CharField()
field2 = serializer.Charfield()
class FooBarSerializer(serializer.Serializer):
foo = serializer.CharField()
foobar = serializer.CharField()
info = InfoSerializer(many=True, required=False)
和视图:
class FooBarView(APIView):
def post(self, request, format=None):
data = FooBarSerializer(request.DATA)
if data.is_valid():
return Response("{'response': 'valid'}")
return Response("{'response': 'invalid'}")