2017-09-08 7 views
1

私はpongongoを使ってmongodb 3.4+のビューを作成する方法を探しています。私は一枚で初期化スクリプトを持っているのpythonでそれをやりたいpymongoを使ってmongoビューを作成するには?

db.getCollection('parsed_tests').aggregate([{ 
$lookup: { 
     from: "raw_tests", 
     localField: "repository_path", 
     foreignField: "repository_path", 
     as: "raw_data" 
    } 
}]) 

次のようにモンゴのコマンドが見えます。誰もこれを行うことができましたか?

+0

'.aggregate()'に渡したパイプラインでビューを作成しますか? – styvane

+0

はい、正しい – niedakh

答えて

1

PyMongoは、ビューを作成する方法を提供していません(Database)。ただし、commandメソッドでビューを作成するには、createコマンドを実行することができます。ファクトcreateViewcreateコマンドのラッパーに過ぎない場合

db.command({ 
    "create": "parsed_tests_view", 
    "viewOn": "parsed_tests", 
    "pipeline": pipeline 
}) 
0

sstyvaneによれば、明示的なデータベースコマンドを与える必要があります。残念ながら、彼らは構文が間違っています。

これが私の仕事:

db.command('create', 'parsed_and_raw_tests', viewOn='parsed_tests', pipeline=my_pipeline)

また、ビューを作成する前に、バージョン3.2またはそれ以前からアップグレードすることを、あなたはneed to set the feature compatibility version to 3.4よMongoのインスタンスを持っている場合。

関連する問題