0
이렇게하면 적절한 양의 레코드가 반환되지만 계정은 첫 번째 레코드에만 채워집니다. 쿼리가 생성하는 쿼리는 또한 올바른 것으로 모든 레코드에 대해 모든 관련 데이터를 반환합니다. populateAll()
은 아무 효과가 없습니다. .exec
에 .then
을 바꿔도 아무런 효과가 없습니다.여러 레코드에서 일대일 연결 검색
또한 연관으로 표시되는 하나의 '계정'은 올바른 레코드조차 없습니다.
내가 잘못했거나 버그입니까?
mail_items.find().populate('account').then(function(mail_items) {
return mail_items;
});
자동 계정 모델의 ID를 생성하여 테이블을 연결하면 광산에서 일하고
module.exports = {
tableName : 'accounts',
attributes : {
account_id : {
type : 'int',
primaryKey : true,
unique : true
},
name : 'string'
}
};
mail_items.js
module.exports = {
tableName : 'mail_items',
attributes : {
mail_item_id : {
type : 'int',
primaryKey : true,
unique : true
},
sender : 'string',
account : {
columnName : 'account_id',
type : 'int',
model : 'accounts'
}
}
};
그것은 확실히 일했다을 account.js. 분명히 각 테이블의 pk는 id 일 필요가 없습니다 ... 맞습니까? 그렇지 않다면 나는 함께 살 수 있습니다. – brian
네, 그러나 돛은 자동 증가 속성으로 기본 키와 함께 'id'를 자동 생성합니다. – vusan
채울 모델이없는 한 가지 이유는 mail_items에서 연결된 ID가있는 계정이 없을 수 있기 때문입니다. – vusan