gpt4 book ai didi

python - 使用 mongoengine 将多文档插入到 mongodb

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

在我的 flask 应用程序中,我使用的是 MongoeEgine。我正在尝试将多个文档插入到我的 MongoDB 中的地点集合中。

我的文档类定义为

class places(db.Document):

name = db.StringField(max_length=200, required=True)
loc = db.GeoPointField(required=True)

def __unicode__(self):
return self.name

a=[]
a.append({"name" : 'test' , "loc":[-87,101]})
a.append({"name" : 'test' , "loc":[-88,101]})
x= places(a)

最后一条语句失败

x= places(a)
TypeError: __init__() takes exactly 1 argument (2 given)

我也尝试将其保存到我的实例中

places.insert(x)
places.save(x)

两者都失败了。请帮忙。

最佳答案

Places.objects.insert 不需要字典列表,它必须是 Places 实例。正常操作是创建 Places 的单个实例并保存或插入,例如:

Places(name="test", loc=[-87, 101]).save()
Places(name="test 2", loc=[-87, 101]).save()

但是,如果您想进行批量插入,您可以传递 Places 实例列表并在 objects 查询集上调用 insert,例如:

Places.objects.insert([Places(name="test", loc=[-87, 101]), 
Places(name="test 2", loc=[-87, 101])])

关于python - 使用 mongoengine 将多文档插入到 mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15143482/

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