我的应用程序中有一个成员,
const member = new Schema({
name: {
type: String,
required: false,
},
organization: {
type: Schema.Types.ObjectId,
ref: 'Organization',
required: true,
},
});
我很难按组织ID查找成员。即使我首先使用以下查询通过ID查找成员
const member1 = await Member.findById(id).populate('organization')
,然后尝试使用其组织ID查找同一成员
const member2 = await Member.findOne({organization: member1.organization});
member2返回为空。
我想念什么?我真的不明白为什么member2在这里为null。 member1组织也不为空。我发现的有关mongodb的所有内容都表明我的方法应该可行,我在哪里出错呢?
已解决: 我在运行测试时发生了错误。我的测试数据已插入到数据库中,例如
{
_id: Types.ObjectId('5acdda00ad63c400142c22ec'),
email: 'email',
password: 'hash',
organization: '5ce474e00000000000000000',
},
本来应该
{
_id: Types.ObjectId('5acdda00ad63c400142c22ec'),
email: 'email',
password: 'hash',
organization: Types.ObjectId('5ce474e00000000000000000'),
},