Как вызвать рекурсивную функцию, передав

Начиная с MongoDB 2.4, больше нет необходимости полагаться на уникальный индекс (или любой другой обходной путь) для атомных findOrCreate подобных операций.

Это благодаря $setOnInsert оператор , новый для 2.4, который позволяет вам указывать обновления, которые должны выполняться только при вставке документов.

Это, в сочетании с опцией upsert, означает, что вы можете использовать findAndModify для достижения атомная findOrCreate -подобная операция.

db.collection.findAndModify({
  query: { _id: "some potentially existing id" },
  update: {
    $setOnInsert: { foo: "bar" }
  },
  new: true,   // return new doc if one is upserted
  upsert: true // insert the document if it does not exist
})

Поскольку $setOnInsert влияет только на вставленные документы, если существующий документ найден, модификация не будет выполнена. Если документ не существует, он будет поддерживать один с указанным _id, а затем выполнить установку только вставки. В обоих случаях документ возвращается.

0
задан Aioros 17 January 2019 в 00:26
поделиться

1 ответ

Если вы хотите вызвать функцию, просто вызовите ее так же, как и любую другую:

montarMenu(this);
0
ответ дан Jack Bashford 17 January 2019 в 00:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: