Pymongo.eval()与Mongo sh

2024-06-11 19:43:52 发布

您现在位置:Python中文网/ 问答频道 /正文

在pymongo中,使用.eval()的这个命令的等效性是什么?在

mongo localhost/mydb --quiet --eval "printjson(db.getCollectionNames())"

因为这似乎不起作用而且什么也不返回:

^{pr2}$

是的,我了解db.collection_names()的工作原理,我特别需要了解如何使用printjson() to pymongo.eval()`正确传递javascript,并获得与原始shell命令相同的响应。在


Tags: to命令localhostdbnamesmongoevalcollection
1条回答
网友
1楼 · 发布于 2024-06-11 19:43:52

这是因为您使用的printjson()不是JavaScript函数。请改用return。在

In [6]: c = Code("function(){return db.getCollectionNames()}")

In [7]: db.eval(c)
Out[7]: 
['bar',
 'baz',
 'col',
 'collection',
 'demo',
 'first_use',
 'sCriteria',
 'spam',
 'system.indexes',
 'test',
 'v']

相关问题 更多 >