Django Serializer 仅使用 many=True 序列化对象
Django Serializer only serializing objects with many=True
我正在尝试制作一个序列化程序
class StoreSerializer(serializers.ModelSerializer):
class Meta:
model = Store
fields = '__all__'
并且在视图集中,
def list(self, request, *args, **kwargs):
obj = Store.objects.first()
ser = StoreSerializer(data=obj)
if ser.is_valid():
pass
print(ser.data)
return Response(ser.data)
此方法仅返回一个空字典 {}
作为响应。当定义序列化器为
ser = StoreSerializer(data=[obj], many=True)
对象正在序列化。我在这里做错了什么?
当您将模型数据传递给 ModelSerializer 时,您不需要调用该函数
serializer.is_valid()
所以你可以只传递数据而没有数据密钥
ser = StoreSerializer(obj)
print(ser.data)
我正在尝试制作一个序列化程序
class StoreSerializer(serializers.ModelSerializer):
class Meta:
model = Store
fields = '__all__'
并且在视图集中,
def list(self, request, *args, **kwargs):
obj = Store.objects.first()
ser = StoreSerializer(data=obj)
if ser.is_valid():
pass
print(ser.data)
return Response(ser.data)
此方法仅返回一个空字典 {}
作为响应。当定义序列化器为
ser = StoreSerializer(data=[obj], many=True)
对象正在序列化。我在这里做错了什么?
当您将模型数据传递给 ModelSerializer 时,您不需要调用该函数
serializer.is_valid()
所以你可以只传递数据而没有数据密钥
ser = StoreSerializer(obj)
print(ser.data)