jjzjj

javascript - Mongoose findByIdAndUpdate 失败没有错误

coder 2023-10-31 原文

这是我的架构:

var postSchema = new mongoose.Schema({
    _id: mongoose.Schema.ObjectId,
    title: String,
    body: String,
    created_at: String,
    modified_at: String
});

var Post = db.model('Post', postSchema);

现在,我在数据库中已经有了一个“帖子”版本。这是我要写的内容(上面架构的一个实例):

{
  title: 'Sample Post',
  body: 'this s a sample post.',
  _id: 50c208567d32d75f15000001,
  modified_at: 'Fri Dec 07 2012 10:53:42 GMT-0500 (EST)'
}

ID 与数据库中的 ID 一致。这是函数:

Post.findByIdAndUpdate( post._id, articleObj, function(err, saved) {
  if( err || !saved ) {
    console.log("Post not updated: "+err);
  } else {
    console.log("Post updated: %s", saved);
  }

  callback(err, saved);
});

控制台返回'post updated' 和原始的post 对象而不会失败。更新从未被写入,也没有任何错误。

我还尝试使用 mongoose.Types.ObjectId( )new ObjectId( ) 将 ID 包装在 findByIdAndUpdate 中(var ObjectId = require('mongoose').Types.ObjectId 在文件的前面)。

我被难住了。任何帮助将不胜感激!

最佳答案

因为 articleObjPost 的实例,您不能在 update 调用中使用它,因为该参数需要是一个普通的JavaScript 对象。

关于javascript - Mongoose findByIdAndUpdate 失败没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13766620/

有关javascript - Mongoose findByIdAndUpdate 失败没有错误的更多相关文章

随机推荐