我有一個貓鼬架構,如:
const Role = new Schema({
guildID: {
type: Schema.Types.ObjectId,
ref: 'guilds',
required: true
},
roles: {
owner: {
id: {
type: Number,
required: false
},
commands: [[Schema.Types.ObjectId]]
}
}
})
還有一個小函式來測驗它是否按需要保存資料,其中包含:
const roleTest = new Role({
guildID: "61a679e18d84bff40c2f88fd",
roles: {
owner: {
id: 123456789
},
commands: [
"61af57d828b9fd5a07dbdcba",
"61af5a6728b9fd5a07dbdcbb",
"61af5ab728b9fd5a07dbdcbc"
]
}
})
roleTest.save((err, doc) => {
if (err) return res.sendStatus(500)
console.log('Done')
})
除了陣列 ObjectIds(命令)之外,它會正確保存所有內容。這里出了什么問題?
uj5u.com熱心網友回復:
您已經commands使用嵌套陣列撰寫了in 架構。嘗試使用單個陣列:
{
commands: [Schema.Types.ObjectId],
}
uj5u.com熱心網友回復:
嘗試這個:
commands: [
{ type: mongoose.Schema.Types.ObjectId }
]
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/376543.html
標籤:javascript MongoDB 猫鼬 猫鼬模式
