MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Loopback ValidationError:Екземплярът „Role“ не е валиден. Подробности:„име“ вече съществува (стойност:admin)

Ако сте Role обект се съхранява в база данни, тогава този код ще се опита да създаде този обект Роля (с име "admin" ) всеки път, когато вашето приложение стартира. Въпреки това, след първия път, тази роля вече ще съществува, поради което получавате грешка, че имате дублирано „име“. Това, което може да искате да направите, е да проверите дали ролята вече не съществува или да не съхранявате ролите във вашата база данни.

Можете да добавите някакъв код, за да проверите текущата DB и да добавите тази роля само ако не съществува. Нещо подобно:

Role.find({ name: 'admin' }, function(err, results) {
    if (err) { /* handle this! */ }

    if (results.length < 1) {
        // now we know the DB doesn't have it already, so do the Role creation...
    }
});

Имайте предвид, че бихте искали също така да проверите дали тази таблица с роли вече съдържа директорите, които добавяте, и да ги добавите само ако вече не са там.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Филтриране на масиви в mongodb

  2. Каква е разликата между findOneAndUpdate и findOneAndReplace?

  3. Какво е по-бързо:`find().limit(1)` или `findOne()` в MongoDB/Mongoose?

  4. Неуспешно:няма намерение за събиране в архив

  5. MongoDB конфигурация в CakePHP 3.x