在数组中查找元素告诉我参数必须是一个对象

用户8463989

当用户单击按钮时,我会尝试在添加之前查看该用户是否已存在于数组中,否则我不想将其添加到现有数组中。

这是猫鼬模式

const Schema = mongoose.Schema;

const productSchema = new Schema({
    title: {
        type: String,
        required: true
    },
    category: {
        type: String,
        required: true
    },
    image: {
        type: String,
        required: true
    },
    description: {
        type: String,
        required: true
    },
    userId: {
        type: Schema.Types.ObjectId,
        ref: 'User',
        required: true
    },
    createdAt: {
        type: Date,
        default: Date.now
    },
    requests: [
        {
             userId: {type: Schema.Types.ObjectId, required: true},
             firstName: {type: String},

        }
    ],
});

module.exports = mongoose.model('Product', productSchema);

和查询

exports.postRequest = (req, res, next) => {
    const productId = req.body.productId;
    const userId = req.body.userId;
    const firstName = req.body.firstName;
    Product.find({requests: userId})
    .then(product => {
      console.log(product);
    })
    .catch(err => {
      console.log(err);
    });
  };

我认为这就是查看数组中是否存在值所需的全部内容,但我收到错误消息:

ObjectParameterError: Document() 的参数“obj”必须是一个对象

生育能力

这向你展示了一个错误,因为请求是一个对象数组。并且您正在查询以userId在数组中找到您应该告诉 mongo 与对象数组中的哪个属性匹配。

改成这样

Product.find( { "requests.userId" : userId })

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

创建一个有两个参数的函数,参数 a 将是一个数组,参数 b 将在数组中查找一个元素

来自分类Dev

在数组的构造函数下,我有一个toString方法,可打印出内容。但这告诉我它不是解析为变量

来自分类Dev

我怎么能告诉我们,如果在数组列表中的元素相同或不同?

来自分类Dev

在我的班级中,我必须创建一个方法来在数组 C# 中查找多个最大数字

来自分类Dev

我必须在数据框中编辑一个元素。怎么办呢?

来自分类Dev

在数组中查找一个元素,其中每个元素比其前一个元素多一个或一个小

来自分类Dev

在数组中查找一个元素,其中每个元素比其前一个元素多一个或少一个

来自分类Dev

在数组中查找与Swift中的特定条件匹配的第一个元素

来自分类Dev

在数组中查找与Swift中的特定条件匹配的第一个元素

来自分类Dev

获取对象的一个元素,该元素不包含在数组中

来自分类Dev

在数组的数组中查找第一个元素,第二个元素的值最高

来自分类Dev

查找在数组中包含特定值但不是最后一个元素的文档

来自分类Dev

在数组中查找下一个更大的元素

来自分类Dev

查找在数组中包含特定值但不是最后一个元素的文档

来自分类Dev

在数组中查找下一个更大的元素

来自分类Dev

在数组中查找下一个较低的值的对象

来自分类Dev

VS Code中的Python告诉我一个数字小于一个较小的数字

来自分类Dev

在数组中查找第一个

来自分类Dev

count():参数必须是一个数组或者一个在php 7.2.1中实现Countable的对象

来自分类Dev

我怎么知道一个元素在数组中的位置?C ++

来自分类Dev

反应本机在数组中给对象一个名称

来自分类Dev

Lumen count():参数必须是一个数组或一个实现了Countable的对象

来自分类Dev

Drupal:count():参数必须是一个数组或者一个实现了Countable的对象

来自分类Dev

在数组中查找唯一的对象

来自分类Dev

为什么我不告诉我,Python Threading会运行一个函数?

来自分类Dev

我想创建一个脚本,告诉我何时发布帖子

来自分类Dev

请告诉我为什么我的输出中有一个“none”

来自分类Dev

在数组元素中引用同一数组的另一个元素

来自分类Dev

FXML 一直告诉我有一个空字符串

Related 相关文章

  1. 1

    创建一个有两个参数的函数,参数 a 将是一个数组,参数 b 将在数组中查找一个元素

  2. 2

    在数组的构造函数下,我有一个toString方法,可打印出内容。但这告诉我它不是解析为变量

  3. 3

    我怎么能告诉我们,如果在数组列表中的元素相同或不同?

  4. 4

    在我的班级中,我必须创建一个方法来在数组 C# 中查找多个最大数字

  5. 5

    我必须在数据框中编辑一个元素。怎么办呢?

  6. 6

    在数组中查找一个元素,其中每个元素比其前一个元素多一个或一个小

  7. 7

    在数组中查找一个元素,其中每个元素比其前一个元素多一个或少一个

  8. 8

    在数组中查找与Swift中的特定条件匹配的第一个元素

  9. 9

    在数组中查找与Swift中的特定条件匹配的第一个元素

  10. 10

    获取对象的一个元素,该元素不包含在数组中

  11. 11

    在数组的数组中查找第一个元素,第二个元素的值最高

  12. 12

    查找在数组中包含特定值但不是最后一个元素的文档

  13. 13

    在数组中查找下一个更大的元素

  14. 14

    查找在数组中包含特定值但不是最后一个元素的文档

  15. 15

    在数组中查找下一个更大的元素

  16. 16

    在数组中查找下一个较低的值的对象

  17. 17

    VS Code中的Python告诉我一个数字小于一个较小的数字

  18. 18

    在数组中查找第一个

  19. 19

    count():参数必须是一个数组或者一个在php 7.2.1中实现Countable的对象

  20. 20

    我怎么知道一个元素在数组中的位置?C ++

  21. 21

    反应本机在数组中给对象一个名称

  22. 22

    Lumen count():参数必须是一个数组或一个实现了Countable的对象

  23. 23

    Drupal:count():参数必须是一个数组或者一个实现了Countable的对象

  24. 24

    在数组中查找唯一的对象

  25. 25

    为什么我不告诉我,Python Threading会运行一个函数?

  26. 26

    我想创建一个脚本,告诉我何时发布帖子

  27. 27

    请告诉我为什么我的输出中有一个“none”

  28. 28

    在数组元素中引用同一数组的另一个元素

  29. 29

    FXML 一直告诉我有一个空字符串

热门标签

归档