我创建了两个带关联的模型:
user.js的
attributes: {
fullname: {
type: 'string',
required: true
},
username: {
type: 'string',
unique: true,
required: true
},
email: {
type: 'email',
unique: true,
required: true
},
mothertongue: {
type: 'string'
},
passports: {
collection: 'Passport',
via: 'user'
},
words: {
collection: 'Words',
via: 'owners',
dominant: true
}
}
Words.js
attributes: {
word: {
type: 'string',
unique: true,
required: true
},
language: {
type: 'string',
required: true
},
owners: {
collection: 'User',
via: 'words'
}
}
当我在搜索单词所有者时,他会返回空数组
Words
.find({
owners: req.session.passport.user
})
.exec(function(err, data){
if (err) {
return res.send('error');
}
res.send(data);
})
我也使用了.populate('owners')
,但也没有用。
答案 0 :(得分:2)
查找用户拥有的字词:
User.find(1).populate('words')
要查找哪些用户拥有特定字词,请使用
Word.find(id).populate('owners', {id : ...})