我目前正在尝试在字符串中构建一个查询,然后使用eval
(ast_eval
)将其转换为dict
,以便传递给pymongo更新。在
for item in default_properties:
query = '{"_id": {ObjectId:"%s"}}' % (oid)
if (doc["diff_id"] == diff_id):
default_val_pos = [line[0], line[1],line[2],line[3],line[4],line[5],line[6],line[7],line[8]]
update_val = '{ "$set":{"properties.%s": default_val_pos[%d] } }' % (item,idx)
db.routes.update(eval(query), eval(update_val))
我认为现在应该可以了,因为在mongoshell中它本身也接受相同的查询,唯一的区别是我使用了from bson.objectid import ObjectId
来格式化它,但是发生了这个错误:
我想我不应该把一个字符串作为一个字符串来解释,我不应该把它作为一个字符串来解释吗?在
谢谢!在
应该是:
您会对MongoDB Extended JSON感到困惑,可以对其进行如下评估:
^{pr2}$但构建查询的最简单方法是使用Python文本:
相关问题 更多 >
编程相关推荐