2017-04-10 4 views
0

pymongoと一致するレコードを数えたいと思います。 私はドキュメントを見上げている:https://docs.mongodb.com/manual/reference/operator/aggregation/group/#group-by-month-day-and-yearpymongoの集計レコード

私は私のようなものやるべきことを理解:しかし、私はこのエラーを

db.foo_baz.aggregate([{'$group': {'_id': '$baz_id', 'count': {'$sum': 1}}}]) 

を取得しています:

 File "/usr/lib/python3.6/site-packages/mongomock/collection.py", line 1531, in aggregate 
    from_field = key.replace('$', '') 
AttributeError: 'int' object has no attribute 'replace' 

コメント

を追加します。私はpymongoがこのmongodbのステートメントにそれを評価すると思います:

db.foo_baz.aggregate({{$group: {_id: '$baz_id', count: {$sum: 1}}}]) 

これは、mongodbコンソールから実行したときに予想される結果を示します。私の場合は{"_id" : NumberInt("1234"), "count" : 1}です。

私は間違っていますか?私はpymongo 3.4とpython 3.6とmongomock 3.7を使用しています。

私もクラッシュしない"1"1を交換しようとしたが、間違った結果得られています({"_id" : NumberInt("1234"), "count" : NumberInt("0")}

答えて

0

まあ、どうやらそれはmongomockのバグだと3.8にアップグレードした後、私は期待される動作を取得します。

関連する問題