pymongo使用字符串来查询而不是字典

时间:2013-01-19 21:49:51

标签: python mongodb pymongo

在pymongo中是否有办法使用字符串来执行查询而不是字典? 我希望能够使用与python / pymongo上的MongoDB shell完全相同的语法。这可能吗?

2 个答案:

答案 0 :(得分:0)

MongoDB shell是功能齐全的javascript控制台/解释器,带有一些与mongodb服务器的消息绑定。相比之下,PyMongo缺少嵌入式JavaScript解释器甚至javascript解析器,因此您无法按原样执行MongoDB shell查询。

请注意,mongo shell查询不是json文档,因为它们可以包含一些函数和一些对象构造函数,例如{value: 2+2}

答案 1 :(得分:0)

eval()功能可能就是你要找的东西。请注意,它在数据库服务器上执行JS代码 - 而不是在某些客户端上的Mongo shell中执行。因此它有很多警告,我强烈建议不要在严重的生产情况下使用它。有关详细信息和示例,请参阅Mongo db.eval docs