0

Flask と Mongo DB を使用したプロジェクトに取り組んでおり、埋め込まれたドキュメントを表示したいと考えています。実際にはエラー メッセージは表示されませんが、データが希望どおりに表示されません。現在、私のドキュメントは次のようになっています。

{ "_id" : ObjectId("590639009103ad05fd8555dc"), 
 "comments" : [ { "comment" : 
 "Hello World" } ], 
 "age" : 23, 
 "name" : "Mike" }

ここで、個人が言った名前とコメントを示すデータを表示したいと思います。私はこのようなものが欲しい: マイクは、次のように言います: 'Hello World'

私のコードは次のようになります。

thoughts = person.show()
for thought in thoughts: 
     print(thought["name"], "says the following:", thought["comments"])

show() メソッドは次のようになります。

def show(self):
    thoughts = self.db.people.find()
    return thoughts

現在、ほとんどの場合、ほとんどすべてが思い通りに機能しています。コードを実行すると、次のようになります。マイクは次のように言います: {'comment': 'Hello World'}

私がする必要があるのは、表示する埋め込みドキュメントをさらに掘り下げることです。

マイクは次のように言います: 「Hello World」

私は次のことを試しました:

for thought in thoughts: 
    print(thought["name"], "says the following:", 
    thought["comments.comment"])

次のエラー メッセージが表示されます: KeyError: 'comments.comment'

次に、次のことを試しました。

for thought in thoughts: 
    print(thought["name"], "says the following:", thought["comments"]
    ["comment"])

次のエラーが表示されます: TypeError: リストのインデックスは str ではなく整数にする必要があります

したがって、各コメントを引き出す方法に多少行き詰まっています。どんな助けでも大歓迎です。

4

1 に答える 1