Jeśli jesteś Role
encja jest przechowywana w bazie danych, wtedy ten kod próbowałby utworzyć tę encję roli (o nazwie "admin"
) przy każdym uruchomieniu aplikacji. Jednak po raz pierwszy ta rola już istniałaby, więc pojawia się błąd, że masz zduplikowaną „nazwę”. To, co możesz chcieć zrobić, to sprawdzić, czy rola już nie istnieje, lub nie przechowywać ról w bazie danych.
Możesz dodać trochę kodu, aby sprawdzić bieżącą bazę danych i dodać tę rolę tylko, jeśli nie istnieje. Coś takiego:
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...
}
});
Pamiętaj, że chciałbyś również sprawdzić, czy ta tabela ról ma już dodawanych podmiotów i dodawać je tylko wtedy, gdy jeszcze ich tam nie ma.