我試圖玩填充,但沒有成功... 這是可能做到這一點?貓鼬填充陣列
我有2瑪: - 用戶
import mongoose, { Schema } from 'mongoose'
const userSchema = new Schema({
email: { type: String, unique: true },
password: String,
passwordResetToken: String,
passwordResetExpires: Date,
products: [{
productId: { type: Schema.Types.ObjectId, ref: 'Product' },
dateAdd: { type: Date, default: Date.now }
}]
}, { timestamps: true })
const User = mongoose.model('User', userSchema)
export default User
和產品:
import mongoose, { Schema } from 'mongoose'
const productSchema = new Schema({
domain: String,
originUrl: { type: String },
price: Number,
img: String,
userFollow: [{ type: Schema.Types.ObjectId, ref: 'User' }]
})
const Product = mongoose.model('Product', productSchema)
export default Product
所以我想檢索所有我的每個prodcutId的信息
我嘗試這樣(和許多其他沒有成功):
User.findOne({ _id: userId }).populate({
path: 'products.productId',
populate: { path: 'products.productId', model: 'Products' }
}).exec(function (err, products) {
if (err) {
console.log('errors :' + err)
}
console.log('Product => ' + util.inspect(products))
})
填充有剛剛findOne()
你沒有找回'產品',而是一個'用戶'與'產品'陣列。並嘗試刪除'模型:'產品''或'模型':'產品'。 – Mikey