PyMongo/MongoDB 中的 $each 修饰符似乎有问题。假设我有一个名为tags
.
我可以像这样更新数据库并且它可以工作:
for tag in tags:
db_collection.update({'username':username},{'$push':{'docs.tags': tag }})
然而,与其对数据库执行多次写入,我认为使用$each
修饰符会更有效。理论上,这可以在没有循环的情况下写成:
db_collection.update({'username':username},{'$push':{'docs.tags': {'$each': tags} }})
但它不起作用。PyMongo 似乎没有检测到 $each 修饰符或其他东西。它仍然存储,但结果是这样的字典:
{'$each': [tag1, tag2, ...] }
我的写作方式是否有问题,或者这实际上没什么好担心的。如,如果我以第一种方式进行,是否不会影响性能。