gpt4 book ai didi

Django 序列化为 JSON 错误 : 'MetaDict' object has no attribute 'concrete_model'

转载 作者:IT老高 更新时间:2023-10-28 13:30:35 33 4
gpt4 key购买 nike

我正在开发一个使用 Django 和 MongoDB(作为模型)的应用程序。我正在尝试使用从表单中获取的数据(手动)初始化模型对象(以便将其进一步发送到另一台服务器)。模型如下所示:

class MyModel(DynamicDocument):
study_name = StringField(default="first study")
individual_name = StringField(default="individual")
file_list = ListField(StringField) # this is a list of paths to some files

在表单中我正在执行以下操作:

pilot_object = MyModel()
pilot_object.individual_name = self.data['individual_name']
pilot_object.study_name = self.data['study_name']
pilot_object.file_list = files_list #file paths (strings)

其中 self.data 是从表单接收到的数据。现在我想按照文档中的描述将此对象(pilot_object)序列化为 JSON:

data_serialized = serializers.serialize('json', [pilot_object, ])

但我收到此错误:

“MetaDict”对象没有“concrete_model”属性

序列化失败。

谁能帮忙?

最佳答案

是的,对于 mongoengine 文档使用 -- 'from rest_framework_mongoengine import serializers' 而不是 from rest_framework import serializers。并且序列化器类应该继承 DocumentSerializer。

关于Django 序列化为 JSON 错误 : 'MetaDict' object has no attribute 'concrete_model' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14483750/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com