MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Niestandardowe komunikaty o błędach z Mongoose

Czy unikalny parametr nie jest obsługiwany w przypadku wiadomości niestandardowych?

Unikalność w Mongoose nie jest parametrem walidacji (jak required ); mówi Mongoose, aby utworzył unikalny indeks w MongoDB dla tego pola.

Ograniczenie unikatowości jest obsługiwane w całości przez serwer MongoDB. Gdy dodasz dokument ze zduplikowanym kluczem, serwer MongoDB zwróci wyświetlany błąd (E11000... ).

Musisz sam poradzić sobie z tymi błędami, jeśli chcesz tworzyć niestandardowe komunikaty o błędach. Dokumentacja Mongoose („Oprogramowanie pośredniczące do obsługi błędów” ) zawiera przykład tworzenia niestandardowej obsługi błędów:

emailVerificationTokenSchema.post('save', function(error, doc, next) {
  if (error.name === 'MongoError' && error.code === 11000) {
    next(new Error('email must be unique'));
  } else {
    next(error);
  }
});

(chociaż nie zapewnia to konkretnego pola, dla którego zawiodło ograniczenie unikalności)



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Indeks w polu ts w oplog.rs nie jest aktualizowany

  2. Słownik Pythona:usuwanie u' chars

  3. Ulepszenia struktury agregacji MongoDB 2.6

  4. MongoDB :Struktura agregacji :Pobierz ostatni datowany dokument według identyfikatora grupowania

  5. Mongo zbiorczo znaleźć i zaktualizować pola pasujących dokumentów w jednym zapytaniu?