【发布时间】:2019-07-09 06:37:52
【问题描述】:
当我们将serialize python model object 嵌套到 json data 时,我们可以在 django 中将其序列化为 foe 示例。
DataSerializer(data_list, many=True)
输出会这样。
[
{"name":"user_1", "id":1},
{"name":"user_2", "id":2},
{"name":"user_3", "id":3},
... ...
]
现在我想一次将json object 的列表反序列化为python model object。
例如:
# the serializer class
class UserSerilizer(serializers.Serializer):
id = serializers.IntegerField(required=True)
name = serializers.CharField(required=True)
# Request model class.
class UserRequestModel:
id = None
name = None
def __init__(self, dictionary):
self.__dict__.update(dictionary)
以及我的工作。
# serialize the request data for param validation
user_serializer = UserSerilizer(data=request.data)
# update the user request model with validate data
user_data = UserRequestModel(user_serializer.validated_data)
这就是为什么我可以访问请求正文 {"name":"user_1", "id":1} 的值 user_data.id 和 user_data.name
但是我怎样才能像我们通过传递参数DataSerializer(data_list, many=True) 一次序列化一样一次为数据列表执行此操作。
【问题讨论】:
标签: python json django python-3.x django-rest-framework