Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb Mongoose.js,尝试更新模型时出错_Mongodb_Mongoose - Fatal编程技术网

Mongodb Mongoose.js,尝试更新模型时出错

Mongodb Mongoose.js,尝试更新模型时出错,mongodb,mongoose,Mongodb,Mongoose,我正在为我的mongodb数据库使用mongoose.js模块。我的数据库如下所示: { thing1: "thing1", thing2: "thing2", boolean: false } 我想更新它并将设置为false。 我试过这个: const model = await myModel.find({ thing1: "thing1", thing2: "thing2" }); await m

我正在为我的mongodb数据库使用mongoose.js模块。我的数据库如下所示:

{
  thing1: "thing1",
  thing2: "thing2",
  boolean: false
}
我想更新它并将
设置为false
。 我试过这个:

const model = await myModel.find({ thing1: "thing1", thing2: "thing2" });
await model.update({ boolean: true });
但它输出了一个错误:

model.update is not a function

我导入了mongoose,我导入了myModel,与数据库的连接良好,我应该怎么做才能修复它?

模型。只有在直接更新时才能进行更新,它的第一个参数是查询元素,接下来是带$set运算符的更新值。您的代码应该是这样的

等待myModel.findOneAndUpdate({thing1:“thing1”,thing2:“thing2”},{$set:{boolean:true}})
模型。只有在直接更新时,才能执行更新,其第一个参数是查询元素,下一个参数是带有$set运算符的更新值。您的代码应该是这样的

wait myModel.findOneAndUpdate({thing1:“thing1”,thing2:“thing2”},{$set:{boolean:true}}})

我想你忘了在
myModel.find上
等待
了。在这里查找是的,不在我的代码中,如果你使用
.findOne
而不是
.find
,你会得到一个可以调用
.update
的文档,如果存在此类文件。因此,如果您在调用
之前检查文档是否为
null
。update
我想您忘记了在
myModel中等待
。在此处查找
是的,不在我的代码中,或者如果您使用
。findOne
而不是
。find
,您将获得一个文档,您可以在其中调用
。update
on,如果存在此类文件。因此,如果您在调用
之前检查文档是否为
null
,这将是明智的。更新
我刚刚尝试过,没有错误,但它没有更新文档。如果这不起作用,请先尝试此查询方法
let model=wait myModel.findOne({thing1:“thing1”,thing2:“thing2”})
model.boolean=true
wait model.save()
如果这两个方法不起作用,那么代码中还有其他问题。我刚刚尝试过,没有错误,但它没有更新文档如果不起作用,尝试第一种方法
let model=wait myModel.findOne({thing1:“thing1”,thing2:“thing2”})
model.boolean=true
wait model.save()
如果这两个方法不起作用,那么代码中还有其他问题。