Django Rest Framework 中的可选序列化程序字段
Optional serializer field in Django Rest Framework
如何在 Django REST Framework 中将序列化程序字段设置为可选?
我有以下序列化程序:
class IdSerializer(serializers.Serializer):
id = serializers.IntegerField(required=None)
required
在 docs.
之后设置为 None
而我的观点:
class MyView(APIView):
serializer_class = PostIdSerializer
def post(self, request):
serializer = self.serializer_class(data=request.data)
if serializer.is_valid():
post_id = serializer.validated_data.get("id")
return Response()
**但是,当我向端点发送 POST 请求时,出现错误:
{
"id": [
"This field is required."
]
}
如何才能不发送 id
?
文档说 required=False
有 None 个值,而不是 required=None
。
如何在 Django REST Framework 中将序列化程序字段设置为可选?
我有以下序列化程序:
class IdSerializer(serializers.Serializer):
id = serializers.IntegerField(required=None)
required
在 docs.
None
而我的观点:
class MyView(APIView):
serializer_class = PostIdSerializer
def post(self, request):
serializer = self.serializer_class(data=request.data)
if serializer.is_valid():
post_id = serializer.validated_data.get("id")
return Response()
**但是,当我向端点发送 POST 请求时,出现错误:
{
"id": [
"This field is required."
]
}
如何才能不发送 id
?
文档说 required=False
有 None 个值,而不是 required=None
。