sql >> Databáze >  >> NoSQL >> MongoDB

Vlastní chybové zprávy s Mongoose

Není jedinečný parametr podporován pro vlastní zprávy?

Jedinečnost v Mongoose není ověřovacím parametrem (jako required ); říká Mongoose, aby pro toto pole vytvořil jedinečný index v MongoDB.

Omezení jedinečnosti je řešeno výhradně na serveru MongoDB. Když přidáte dokument s duplicitním klíčem, server MongoDB vrátí chybu, kterou zobrazujete (E11000... ).

Pokud chcete vytvořit vlastní chybové zprávy, musíte tyto chyby zpracovat sami. Dokumentace Mongoose ("Error Handling Middleware" ) vám poskytuje příklad, jak vytvořit vlastní zpracování chyb:

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

(ačkoli vám to neposkytne konkrétní pole, pro které selhalo omezení jedinečnosti)



  1. MongoDB $split

  2. Jak nakonfiguruji JedisConnectionFactory pro použití SSL, aby se mi nezobrazovala chyba:JedisDataException:ERR nešifrované připojení je zakázáno?

  3. Redis — nejlepší způsob, jak uložit velkou mapu (slovník)

  4. Konfigurace ověřování MongoDB-CR jako výchozí na MongoDB 3.x