2012-02-11 8 views
2

pymongoのシャードキーフィールドの順序をどのように指定しますか?pymongoでシャードキーフィールドの順序をどのように指定しますか? (mongodbの場合)

connection.admin.command('shardcollection', 'dbname.collname', key = {c:1,b:1,a:1}) 

が、これは私のキーの順序を尊重しない:(MongoDBのために)

基本的に、あなたがすることができpymongo。

これをmongoシェルで実行すると、キーの順序が尊重されます。

誰かがpymongoで注文を指定する方法を知っていますか?

ありがとうございました。

答えて

4

私はそれを理解しました!

from collections import OrderedDict 

key = OrderedDict([('a',1), ('b', 1), ('c',1)]) 
... 
... 
connection.admin.command('shardcollection', 'mydb.test', key=key) 
+0

oops!私は答えを投稿したあなたを見ませんでした。ところで、それは私のために働いていない。それは "欠損値"と言います。何か案が ? –

+1

[( 'c'、1)、( 'b'、1)、( 'a'、1)]のようなタプルのリストを試してください – user701632

関連する問題