如何检查mongodb中是否存在数据集合



我正在尝试在数据库中添加多个名称,在此之前我想检查该名称是否已经存在。数据库已经有字段"Name": "radhaa",但我收到这个错误CastError: Cast to string failed for value "{ Name: 'radhaa' }" (type Object) at path "Name" for model "user"请帮助我,提前感谢

我正在尝试以下查询。const roles = await User.find({ Name : req.body.Name })

在邮递员那里,我试着这样做:

[{
"Name": "radhaa"
},{
"Name": "sitha"
}]

您正试图将对象{ Name: 'radhaa' }传递给模型中的Name属性,该属性是string

似乎是req.body.Name = { Name: 'radhaa' }而应该是req.body.Name = 'radha'

仔细检查您从邮递员发送的请求正文

毕竟req.body应该像这个{ Name: 'radha' }

虽然它是这样发送的,但我想是{ Name: { Name: 'radhaa' } }

  1. 如果您首先要检查名称是否已经存在,则必须使用.find()方法并使用if..else来检查名称是否已存在。如果它存在,则返回响应;否则,如果它不存在,则将记录保存到数据库中。

  2. 当你试图发送一个数组作为请求体时,你必须使用循环,对于数组检查的每个值,都使用我上面提到的step 1,这样你就只能在数据库中获得唯一的值。

注意:请检查mongodb数据库的属性和键的名称。小写和大写很重要。

最新更新