我正在处理节点/ mongodb应用程序,并且使用猫鼬作为映射器。我有以下代码:
async getProfileByHandle(handle) {
const user = await User.findOne({ handle });
if (user) {
const profile = await Profile
.findOne({ user: user.id })
.populate({ path: 'user' });
return profile;
}
return null;
}
此代码可以正常工作。但是我在这里用猫鼬正确地做到了吗?
用户集合具有 handle 属性。 个人资料集合具有用户属性作为参考。现在,我想通过 handle 获取个人资料。由于 handle 在 user 集合中,因此我首先按handle获取用户。然后,使用收到的 user-> user.id 搜索配置文件。
我该如何以更优雅的方式做到这一点?