我正在将Node.js与Mongoose结合使用,并具有两个模式:User
和Friend
。两者都有一个公共字段:accountId
。
用户:
const UserSchema = new mongoose.Schema({
username: String,
accountId: String,
fnApiId: Number,
epicName: String,
seasonWindow: String,
devices: [String],
data: Object,
overallData: Object,
dateAdded: {
type: Date,
default: Date.now
},
})
const User = mongoose.model('User', UserSchema)
朋友:
const FriendSchema = new mongoose.Schema({
accountId: {
type: String,
required: true,
unique: true,
},
mainDevice: {
type: String,
required: true,
enum: ['keyboardmouse', 'gamepad', 'touch']
},
dateAdded: {
type: Date,
default: Date.now
},
})
const Friend = mongoose.model('Friend', FriendSchema)
我的数据库有很多用户,但只有几个朋友,因为AccountId
的{{1}}是唯一的,而Friend
却不是,这意味着我有很多同一User
的文档。
我只想根据数据库中每个User
的{{1}}找到User
的最后一个匹配项(忽略所有不是朋友的用户),并返回一个JSON,其中添加了-dateAdded
中的Friend
字段。
我已经尝试了几件事,但是没有成功。
mainDevice
有人可以帮助我吗?
谢谢