[MONGODB] 몽구스 - ObjectId가 배열에 채우기를 사용
MONGODB몽구스 - ObjectId가 배열에 채우기를 사용
내가 좋아하는 조금 보이는 스키마를 가지고 :
var conversationSchema = new Schema({
created: { type: Date, default: Date.now },
updated: { type: Date, default: Date.now },
recipients: { type: [Schema.ObjectId], ref: 'User' },
messages: [ conversationMessageSchema ]
});
내 수신자 수집 그래서, 개체 ID의 집합 내 사용자 스키마 / 모음을 참조하는 것입니다.
내가이 노력하고있어 그래서 나는, 쿼리에이를 채울 필요가 :
Conversation.findOne({ _id: myConversationId})
.populate('user')
.run(function(err, conversation){
//do stuff
});
그러나 분명히 '사용자는'채우기되지 ...
나는이 작업을 수행 할 수있는 방법이 있나요?
해결법
-
==============================
1.대신 컬렉션 이름의 스키마 경로의 이름을 사용합니다 :
대신 컬렉션 이름의 스키마 경로의 이름을 사용합니다 :
Conversation.findOne({ _id: myConversationId}) .populate('recipients') // <== .exec(function(err, conversation){ //do stuff });
-
==============================
2.이 질문에 걸쳐 오는 다른 사람을 위해 .. 영업 이익의 코드는 스키마 정의에 오류가있다 .. 그것은해야한다 :
이 질문에 걸쳐 오는 다른 사람을 위해 .. 영업 이익의 코드는 스키마 정의에 오류가있다 .. 그것은해야한다 :
var conversationSchema = new Schema({ created: { type: Date, default: Date.now }, updated: { type: Date, default: Date.now }, recipients: [{ type: Schema.ObjectId, ref: 'User' }], messages: [ conversationMessageSchema ] }); mongoose.model('Conversation', conversationSchema);
from https://stackoverflow.com/questions/10568281/mongoose-using-populate-on-an-array-of-objectid by cc-by-sa and MIT license
'MONGODB' 카테고리의 다른 글
[MONGODB] 설정 MongoDB의 프로그래밍 컨버터 (0) | 2019.12.23 |
---|---|
[MONGODB] 몽구스 스키마의 배열 크기에 대한 제한을 설정하는 방법 (0) | 2019.12.22 |
[MONGODB] MongoDB를가 : 큰 파일을 가져올 때 mongoimport는 연결이 끊어 (0) | 2019.12.22 |
[MONGODB] 중첩 된 필드에서 MongoDB를 업데이트 데이터 (0) | 2019.12.22 |
[MONGODB] 자바 스크립트의 ISO 날짜 객체를 생성 (0) | 2019.12.22 |