python – 如何排序mongodb与pymongo

我试图使用排序功能,当我查询我的mongoDB,但它是失败。相同的查询在MongoDB控制台中工作,但不在这里。代码如下:

import pymongo

from  pymongo import Connection
connection = Connection()
db = connection.myDB
print db.posts.count()
for post in db.posts.find({}, {'entities.user_mentions.screen_name':1}).sort({u'entities.user_mentions.screen_name':1}):
    print post

我得到的错误如下:

Traceback (most recent call last):
  File "find_ow.py", line 7, in <module>
    for post in db.posts.find({}, {'entities.user_mentions.screen_name':1}).sort({'entities.user_mentions.screen_name':1},1):
  File "/Library/Python/2.6/site-packages/pymongo-2.0.1-py2.6-macosx-10.6-universal.egg/pymongo/cursor.py", line 430, in sort
  File "/Library/Python/2.6/site-packages/pymongo-2.0.1-py2.6-macosx-10.6-universal.egg/pymongo/helpers.py", line 67, in _index_document
TypeError: first item in each key pair must be a string

我在其他地方发现了一个链接,如果使用pymongo,我需要放置一个“u”infront的关键,但这也没有工作。任何人都得到这个工作,或者这是一个错误。

.sort(),在pymongo中,取键和方向作为参数。

所以如果你想排序,让我们说,然后你应该.sort(“_ id”,1)

http://stackoverflow.com/questions/8109122/how-to-sort-mongodb-with-pymongo

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:python – 如何排序mongodb与pymongo