我正在使用 Node.js、Mongoose 和 MongoDB。在 Postman 中进行测试。2个用户可以回答问题。我想组织一下,稍后也显示这些问题和 2 个用户的答案。我可以实现将 2 个用户的答案分成两个不同的数组。但我想要的是:问题不应该重复,答案应该附加到两个用户回答的问题上。使用这段代码,我几乎达到了预期的结果,但并不完美。请看下面我的预期结果。 let user = await User.findById(req.user.id); let user2 = await User.find({ matched: user.email }); let answer = await Answer.find({ by: user.email, }); let answer2 = await Answer.find({ by: user2[0].email, }); var array = []; var allAnswers = {}; allAnswers["1"] = answer; allAnswers["2"] = answer2; array.push(allAnswers); res.json(allAnswers);不太好的结果:{ "1": [ { "question": "Question1", "answer": "some answer", "by": "user2" } ], "2": [ { "question": "Question1", "answer": "some answer", "by": "user1" }, { "question": "Question2", "answer": "some answer", "by": "user1" } ]}预期和期望的结果:{ "Question1": [ { "answer": "some answer", "by": "user2" }, { "answer": "some answer", "by": "user1" } ], "Question2": [ { "answer": "some answer", "by": "user1" } ]}由于 user2 没有回答 Question2,我不想显示:{ "Question1": [ { "answer": "some answer", "by": "user2" }, { "answer": "some answer", "by": "user1" } ], }当然,可能有数百个相关问题,但只有两个用户回答。
添加回答
举报
0/150
提交
取消