我正在努力用MongoEngine进行批量插入。我可以很容易地用一个循环来执行.save()来写入数据库,但是我无法从MongoEngine文档中找到执行大容量插入的过程。唯一提到的是这里的SO:multi document insert using mongoengine into mongodb。我试图这样做,但我只是插入所有文档,而没有在模式中验证它们。在

这是我的代码:import mongoengine as me

# connect to MongoDB

me.connect(host='CONNECTION_STRING')

# venue Schema

class newVenues(me.Document):

name = me.StringField(required=True)

latitude = me.DecimalField(required=True)

longitude = me.DecimalField(required=True)

# some test data

venues = [{'name': 'Vega',

'latitude': 55.672867,

'longitude': 12.473692},

{'name': 'Tivoli',

'latitude': 55.681256,

'longitude': 12.553412}]

# the list of venues to bulk insert to MongoDB

venues_to_insert_list = []

for venue in venues:

venues_to_insert_list.append(

newVenues(

name=venue.get('name'),

latitude=venue.get('latitude'),

longitude=venue.get('longitude')

)

)

# bulk insert to MongoDB

newVenues.objects.insert(venues_to_insert_list)

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐