gpt4 book ai didi

django - Mongoengine python3 Embedded Document 没有属性_is_document

转载 作者:行者123 更新时间:2023-12-02 02:51:06 26 4
gpt4 key购买 nike

我正在使用 mongoengine 创建我的文档,该文档的字段为 EmbeddedDocument。

但我收到以下错误:

AttributeError: 'EmbeddedDocument' 对象没有属性 '_is_document'

做了一些研究,我发现 mongoengine 的代码是用 python 2 编写的,并且确实可以使用 pip3 正确安装它。做了同样的事情还是不行。

class DataImportNodeInfo(EmbeddedDocument):

provider_id = fields.IntField(required=False)
carrier_name = fields.StringField(required=False)
basepath = fields.StringField(required=False)
log_tobe_imported = fields.ListField(required=False)


class DataImportConnectionInfo(EmbeddedDocument):

host = fields.StringField(required=True)
user_login = fields.StringField(required=False)
user_pwd = fields.StringField(required=False)


class DataImportNode(DynamicDocument):

# Meta variables
meta = {
'collection': str(KonnectDAConstants.DATA_IMPORT_NODES)
}

cmd = fields.StringField(required=True)
import_source = fields.StringField(required=True)
import_type = fields.StringField(required=True)
active = fields.BooleanField(required=True)
info = fields.EmbeddedDocument(DataImportNodeInfo, required=True)
connection = fields.EmbeddedDocument(DataImportConnectionInfo, required=True)

AttributeError: 'EmbeddedDocument' object has no attribute '_is_document'

最佳答案

您应该使用 EmbeddedDocumentField而不是 EmbeddedDocumentDataImportNode :

info = fields.EmbeddedDocumentField(DataImportNodeInfo, required=True)
connection = fields.EmbeddedDocumentField(DataImportConnectionInfo, required=True)
EmbeddedDocumentField用于引用 EmbeddedDocument .

关于django - Mongoengine python3 Embedded Document 没有属性_is_document,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52184069/

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