猫鼬:不建议将未将“ useFindAndModify”选项设置为false的“ findOneAndUpdate()”和“ findOneAndDelete()”

时间:2020-07-01 15:36:27

标签: node.js mongodb mern

我正在研究MERN应用程序! 在后端(Mongodb NodeJs)中,我有一个用户架构

Execute [ef016c93]

用户有一个名为游戏的数组!现在我想从这个数组中删除一个游戏,我编写了这个函数

const UserSchema = new Schema({
  username: {
    type: String,
    required: true
  },
  email: {
    type: String,
    required: true
  },
  password: {
    type: String,
    required: true
  },
  date: {
    type: Date,
    default: Date.now
  },
  birthdate:{
    type: Date
  },
  gtPoints: {
    type: Number
  },
  age:{
    type: Number,
  },
  followersCount: {
    type: Number,
    default :0
  },
 
  pictureID: { 
    type: mongoose.Schema.ObjectId,
     ref: "pictures"
    },
  games: [
    {
      type: mongoose.Schema.ObjectId,
       ref: 'Games'
      }],

)}

它确实能完成工作,它删除了一个游戏,因为当我喜欢看这个游戏时,它给了我“ NULL”,但是当我得到这个用户时,桌上游戏仍然包含已删除游戏的ID。

并且此消息显示为“不建议将猫鼬{router.route('/deletegame/:id').delete(function(req, res) { Game.findByIdAndRemove(req.body.id, function (err, game){ if (err) return next(err); else( User.updateOne( { id: req.params.id }, { $pull: { games: req.body.id } } ), res.send('Deleted successfully!') ) }); }); findOneAndUpdate()的{​​{1}}选项设置为false。”

somoene可以帮我吗!

0 个答案:

没有答案