0 Вопрос: источник данных обратной связи (DocumentDB) найдено несколько экземпляров.

вопрос создан в Thu, May 2, 2019 12:00 AM

При инициализации обратной петли я получаю следующее

Error: There are multiple instances found.Upsert Operation will not be performed!
    at /usr/src/app/node_modules/loopback-datasource-juggler/lib/dao.js:844:25
    at _combinedTickCallback (internal/process/next_tick.js:132:7)
    at process._tickDomainCallback (internal/process/next_tick.js:219:9) statusCode: 400

Когда я пытаюсь подключиться к AWS DocumentDB, но когда я пытаюсь использовать локальный сервер Mongo, я не получаю сообщение об ошибке, я действительно не знаю, почему

    
- 1
  1. Вы выполняете какую-либо логику при инициализации? У вас есть что-нибудь в каталоге boot, которое пытается что-то сделать?
    2019-05-02 15: 27: 34Z
  2. У меня есть логика для init, в моем загрузочном каталоге у меня мало init в соединениях с БД и почтой, проблема в module.exports = function (app) { let emailDefault = app.get('defaultEmail'); let emailContent = app.models.EmailContent; emailDefault.forEach(function (newEmail) { emailContent.upsertWithWhere({name: newEmail.name}, newEmail, function(err, email) { if(err) { console.log(err); } }); }); };
    2019-05-03 08: 04: 44Z
  3. Согласно: [link] github.com/strongloop/loopback/issues/2982 [ссылка] Мы не должны делать несколько Upsert, однако это работало, я использовал loopback config.development.js для моей конфигурации ... и перенести в DocumentDB все еще какая-то зона дракона, но мы исправили upsertWithWhere, используя findOrCreate
    2019-05-03 08: 44: 32Z
  4. Два upsertWithWheres на одной конечной точке не могут происходить одновременно. Ваша локальная конфигурация может быть намного быстрее, так что первый завершается до запуска второго, тогда как при использовании удаленного сервера первый все еще работает, когда вы вызываете второй.
    2019-05-03 13: 09: 08Z
0 ответов                              0                         
источник размещен Вот