gpt4 book ai didi

python - 有没有办法自动从 mongoengine 中存储的 ListField 中删除列表元数据?

转载 作者:太空宇宙 更新时间:2023-11-03 19:47:56 25 4
gpt4 key购买 nike

我目前正在 python 中使用 mongoengine。当我使用列表变量存储文档并在之后“获取”它时,mongoengine 会向列表中添加一些元数据。我怎样才能摆脱元数据?

class Example(Document)
key = StrinField(primary_key = True)
lis1 = ListField()

lis2 = [1,2,3]

obj = Example(lis1 = lis2, key = "123")
obj.save()

obj0 = Example.objects.get(key = "123")
print(obj0.lis1)

>> Output is the list plus metadata like _dereferenced, _instance and _name

我的方法是将所有列表保存为序列化字符串,但必须有更好的解决方案!

最佳答案

(此处为 MongoEngine 贡献者)MongoEngine 确实向列表添加了一些元数据,它在幕后使用内置 list 类的子类。这些不存储在 MongoDB 中,它们允许 MongoEngine 处理自动取消引用或跟踪应用于文档实例的更改。它们应该对您的应用程序无害,因为它们可以作为标准 python 列表进行操作。

尝试绕过它并不是一个好主意,因为它是 MongoEngine 内部的一部分。

关于python - 有没有办法自动从 mongoengine 中存储的 ListField 中删除列表元数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60019803/

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