Web ページから受け取ったデータを json として既存の MongoDB ドキュメントを更新するエレガントな方法を見つけようとしています。問題は、どのフィールドが更新されるかを事前に知らないことです。そのため、 set__field を使用できません。MongoDBドキュメントで更新するフィールドの json 表現しかありません。さらに、DynamicDocuments を使用しているため、ドキュメントに新しいフィールドが設定される可能性があります。例えば:
class Study(DynamicDocument):
study_accession_nr = StringField()
study_name = StringField()
study_type = StringField()
json は次のようになります。たとえば、次のようになります。
{"_id" : "123", "study_name" : "Statistics"}
また
{"_id" : "123", "study_type" : "research", "study_name" : "Statistical analysis"}
コンソールから、または pymongo を使用して簡単に実行できますが、手動で attr(myDocInstance, nameOfField, val) を設定しない限り、Mongoengine を使用してこれを行う方法がわかりません。ありがとう!