私はPythonでMongoからデータを取得しています。すべての文書をカーソルから配列に移動します。次に、ドキュメントを処理し、オブジェクト/辞書にいくつかの新しいプロパティを追加しようとしますが、KeyErrorと言います。 mongoによって返されたオブジェクトを修正しようとしたときにNodejsでこのような動作が見られました。ソリューションには単純なオブジェクトを取得するためにquery.lean()。exec()があります。 pymongoに相当するものはありますか?は、Pythonでmongoから返されたオブジェクトにプロパティを追加できません
0
A
答えて
0
dictに新しいキーを設定するときにKeyErrorが発生しません。あなたは何か間違っていることを意味しています。
KeyError例外が発生した参照:https://stackoverflow.com/a/10116540/4273834
をただ要約する:あなたがキーを設定しようとするのではなく、あなたが存在しないキーの値を取得しようとする場合はKeyError例外が発生しません。
cursor = col.find({})
my_list = list(cursor)
my_list[0]['added_field'] = 'whatever'
をジャストサイドノート:ここで
は動作するコードスニペットですリスト(カーソル)はPythonでデータを処理する方法の方法ではありません。 (リストを持っているいくつかの特定の理由がない限り...)推奨の方法は、直接カーソルをループにある:
for doc in cursor:
doc['new_key'] = 'test'
do_whatever_you_want_with_the_doc(doc)
関連する問題
- 1. チェックボックスのチェックされたプロパティを追加できません
- 2. 外部スコープから外部オブジェクトにプロパティを追加できませんか?
- 3. jsオブジェクトにプロパティを追加できません
- 4. Pythonでは、追加で追加されたセットの追加はサポートされていませんか?
- 5. .jarに追加されたプロパティが見つかりません。
- 6. ビューが返されませんでした。(HttpResponseオブジェクトは返されません)
- 7. firebaseから返されたオブジェクトのプロパティにアクセスすることができません
- 8. 返されたオブジェクトにアクセスできません - リソースサービス
- 9. 動的に追加されたUILabelにジェスチャを追加できません
- 10. オブジェクトをEntityCollectionまたはEntityReferenceに追加できませんでした
- 11. Python Kivy、Pythonで画面にラベルを追加できません
- 12. 動的に追加されたオブジェクトは、JavaScriptでスタイルを取得しません
- 13. Ionic InAppBrowserから返されたイベントをリッスンできません
- 14. TFS 2013から新しく追加されたファイルをダウンロードできません。
- 15. 追加されたテーブルから値を取得できません。
- 16. データベースから新しく追加された行を取得できません
- 17. Resources.resxから新しく追加されたファイルを取得できません
- 18. カスタマイズされたプロパティはJavascriptで列挙できませんか?
- 19. ArrayListにオブジェクトを追加できませんか?
- 20. オブジェクトにappend()関数のテキストを追加できませんか?
- 21. 新しく追加されたフレームワークファイルをインポートできません
- 22. Xcode - 追加されたフレームワークをコンパイルできません
- 23. 追加された要素を選択できません
- 24. 追加されたtextearea値を取得できません
- 25. DOMにプロキシオブジェクトを追加できません(トラップはトリガーされません)
- 26. mongo返されたオブジェクト(findOne)から1つのネストされたオブジェクトをフィルタリングする/返す
- 27. プログラムで追加されたビューは表示されません
- 28. Sequelize FindOneによって返されるオブジェクトにプロパティを追加します。
- 29. Python:リストを追加しても実際に追加されませんか?
- 30. 関数が返すオブジェクトにプロパティを追加しますか?
あなたは 'nontree'スタイルを使用し、理由のmongo>ダンプ>変更> update''ので、不可解な 'mongo-hash to mongo-hash(mongo-hash)'!あなたのアップデートに別の 'クエリフィルタ 'が含まれていると大きな問題が発生します。これを確認してください:http://stackoverflow.com/questions/18363472/mongoose-lean-query-virtuals-not-showing – dsgdfg
私は分かりません。私はクエリを作成し、データを取得しました。今私は私のプログラムの中でそれを操作しようとしています。私はまだデータベース自体を更新していない。 – user137717
は 'jsonID'で動作するので、' _id'を定義しますか? https://docs.mongodb.com/manual/reference/method/db.collection.update/ @ user137717 – dsgdfg