У меня есть следующая коллекция mongoose «User»

#node.js #mongodb #mongoose #arrayobject

#node.js #mongodb #мангуст #arrayobject

Вопрос:

    {
    email: {
      type: String,
    },
    customer: [
      {
        name: {
          type: String,
        },
        mobile: {
          type: Number,
        },

        entries: [
          {
            date: {
              type: Date,
            },
            qty: {
              type: Number,
            },
            price: {
              type: Number,
            },
            amount: {
              type: Number,
            },
          },
        ],
        payment: [
          {
            date: {
              type: Date,
            },
            paymentReceived: {
              type: Number,
            },
            paymentMode: {
              type: String,
            },
          },
        ],
      },
    ],
  },
  

Я хочу найти пользователя по их _id, если _id найден, тогда я хочу добавить в записи клиента, такие как цена, количество и т.д., Где клиент._id соответствует определенному идентификатору клиента.

Я попробовал несколько методов, но все еще не смог добавить запись на основе идентификатора клиента и электронной почты пользователя

Комментарии:

1. Эй, Динеш, ты можешь показать код, который ты пробовал. Вы можете использовать findOneAndUpdate. mongoosejs.com/docs/tutorials/findoneandupdate.html

2. @raga , спасибо за ваш ответ, findOneAndUpdate в моем случае не подойдет, так как я хочу проверить два условия и, если они совпадают, добавить запись. Однако я думаю, что моя коллекция немного сложна, поэтому я собираюсь разбить ее на две коллекции, то есть user и customer. Это должно решить мою проблему.