Как я могу использовать два разных элемента запроса для создания нового документа в MongoDB?

#javascript #mongodb #express #mongoose

#javascript #mongodb #экспресс #мангуст

Вопрос:

В моем приложении у меня есть req.body и req.user . Я хочу использовать оба из них для создания нового документа. Это все, что я смог сделать с помощью своего кода. Похоже, что Model.create принимает только один из этих входных данных. Каков наилучший способ получить оба createdBy и данные, содержащиеся внутри req.body , для создания нового документа?

 exports.createOne = Model =>
  catchAsync(async (req, res, next) => {
    const createdBy = req.user.id;
    const doc = await Model.create(req.body, createdBy);
    res.status(201).json({
      status: 'success',
      data: {
        data: doc
      }
    });
  });
 

Ответ №1:

Я забыл, что req.body — это просто объект, поэтому самый простой способ добиться того, что я пытался сделать, это просто:

 req.body.createdBy = req.user.id