가의 아래와 같이 수정하여 scaryguy에서 우수한 example을 빌려 아이 스키마에 정의 된 기준에 따라 부모 개체를 채우는 인구, 즉 '반전' 스키마 :몽구스
var ProjectSchema = new Schema({
title : {type : String, default : '', required : true},
group : {type: String, ref: 'ProjectGroup' },
subscribers : [{type: String, ref: 'User' }]
});
사용자 스키마 :
var UserSchema = new Schema({
userId : {type: String, require: true},
firstName : {type: String, required: true},
lastName : {type: String, required: true},
});
그럼 난 인구 다음을 수행 할 수 참조 필드 ID를 객체되지 않습니다
가project.findById(req.projectId})
.populate('subscribers')
.populate('group')
.exec(function(err, project){
console.log(project);
});
참고.
이 예제에서 프로젝트 스키마에는 위의 채우기를 가능하게하는 프로젝트 그룹과 구독자 모두에 대한 참조 필드가 있습니다.
해당 그룹에 속한 모든 프로젝트를 포함하고 각 프로젝트에 구독자가 포함 된 ProjectGroup 개체를 가져 오려면 어떻게해야합니까?
나는 '반전 된'집단, 즉 하위 스키마에 정의 된 참조를 기반으로 부모 객체를 채우는 것을 찾고 있다고 말하고 싶습니다. 현재 async를 사용하여 ProjectGroup을 먼저 쿼리 한 다음 projectGroupId를 기반으로 프로젝트를 쿼리합니다.
감사합니다.
'projectGroupId'란 무엇입니까? 'ProjectSchema' 객체의 이드입니까? – Chinni
projectGroupId는 String 유형의 ProjectGroup의 고유 식별자입니다. –
어쩌면 늦었지만 가상 인구를 살펴볼 수 있습니다 –