Команда Mongodb для генерации нового ObjectId с использованием Extended JSON - PullRequest
0 голосов
/ 02 февраля 2020

У меня есть коллекция, подобная приведенной ниже

enter image description here

Мне нужно добавить sh новый объект в массив «stores», используя расширенный json.

Как я могу поручить Mongodb создать новый ObjectId для атрибута _id?

Мне интересно что-то вроде этого:

{
  '_id' : { '$oid' : '$<here_some_command_to_generate_new_oid_automatically>' },
  'address' : 'my store address',
  'contact' : 'John Doe'
}

1 Ответ

0 голосов
/ 07 февраля 2020

Если я вас не правильно понял, если вам просто нужно сгенерировать с использованием клиентской части, вы можете сделать это так же, как любой драйвер для документов верхнего уровня.

В java для создания расширенной версии json вы можете использовать JsonWriterSettings с режимом вывода как JsonMode.Extended. Что-то вроде

JsonWriterSettings setting = JsonWriterSettings.builder().outputMode(JsonMode.EXTENDED).build();
Document id = new Document("_id", new ObjectId());
String extendedIdJson = id.toJson(setting);// {'_id' : { '$oid' : '507f191e810c19729de860ea' }}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...