问题描述
mongoose populate 似乎不起作用, 另人疑惑的是, 我在项目另一个地方使用,它是正常的
问题出现的环境背景及自己尝试过哪些方法
mongodb: 4.0.1
mongoose: 5.2.9
相关代码
// dinner.model.js
const mongoose = require('mongoose')
const Schema = mongoose.Schema
const DinnerSchema = new Schema({
name: {
type: String
},
content: {
type: [{
type: Schema.Types.ObjectId,
ref: 'Food'
}]
}
})
const Dinner = mongoose.model('Dinner', DinnerSchema, 'dinners')
module.exports = Dinner
// food.model.js
const mongoose = require('mongoose')
const Schema = mongoose.Schema
const FoodSchema = new Schema({
name: {
type: String
}
})
const Food = mongoose.model('Food', FoodSchema, 'foods')
module.exports = Food
router.get('/test', async (ctx, next) => {
const result = await DinnerModel.find().populate({
path: "foods"
})
ctx.result = {
code: 200,
data: {
list: result,
msg: 'success'
}
}
await next()
})
你期待的结果是什么?实际看到的错误信息又是什么?
是什么原因导致的?