Ако сте 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...
}
});
Имайте предвид, че бихте искали също така да проверите дали тази таблица с роли вече съдържа директорите, които добавяте, и да ги добавите само ако вече не са там.