首页 > 解决方案 > E11000 重复键错误收集:发生.posts 索引:likes_1 重复键:{喜欢:未定义}

问题描述

尝试向数据库中添加一个新帖子,一次添加,第二次报错Post Schema如下

const PostSchema:Schema = new Schema({
    author:{required:true,
      type:mongoose.Schema.Types.ObjectId,
      ref:'User',
    },
    title:{required:false,type:String},
    image:{required:false,type:String,},
    contents:{required:true,type:String},
    tags:{required:false,type:[String]},
    likes:{type:[
      {
        type:mongoose.Schema.Types.ObjectId,
        ref:'User',
      }
    ],
        default:[],
        unique:false,
        required:true
      },
    createdAt:{type:Date,default:Date.now},
    public:{type:Boolean,default:true},
})

帖子功能在这里

   request.body.author=request.body.AuthorizedUser.id
   let {author,tags,title,contents}=request.body
   tags=tags?tags:[]
   const data= await PostModel.create({author,tags,title,contents,likes:[]}) 
   response.status(201).json({success: true,data})   
   

标签: javascriptnode.jsmongodbmongoose

解决方案


推荐阅读