Как получить последний присвоенный objectID коллекции - PullRequest
0 голосов
/ 15 марта 2020

У меня есть 2 коллекции, одна для сведений об агенте магазина, таких как имя и тип агента ... et c, а другая для хранения учетных данных пользователя, таких как имя_пользователя и пароль

agent_collection{
   _id:''
   NAME:'',
   MAIL:''
}
user collection{
_id:'',
agent_id:'',
user_name:'',
password:''
}

, теперь я хочу ObjectId из agent_collection в user_collection как значение agent_id при вставке новой записи. Есть ли какие-либо методы для получения ObjectId коллекции

Спасибо

1 Ответ

0 голосов
/ 16 марта 2020

Метод insert имеет вид: insertOne (do c, options, callback)

Обратный вызов имеет тип insertOneWriteOpCallback (ошибка , результат) , где result - это insertOneWriteOpResult объект. Объект result имеет поле insertedId; это «Драйвер сгенерировал ObjectId для операции вставки».

Итак, ваш код может быть:

  let new_agent_doc = { agent_name: 'John Doe', email: 'johnd@example.com' }

  collection.insertOne(doc, (err, result) => {

      console.log('inserted the following ID: ', result.insertedId);
      // use the newly created agent's id value: result.insertedId
  });
...