web-dev-qa-db-ja.com

一致が見つからないMongooseクエリから何が返されますか?

Mongooseのドキュメントを読んで少し混乱しています。

コレクション内のどのドキュメントとも一致しないクエリをmongooseで実行した場合、コールバック関数callback(err, results)errおよびresultsの値は何ですか? Mongooseが「エラー」と見なしているものを知りません。数学者として、空のセット(つまり、results配列が空)を返すことは完全に有効であり、「エラー」であってはなりません。クエリは正常に実行され、一致するドキュメントはありませんでした。一方、「エラー」と見なす人もいます。マングースのドキュメントから、次のいずれか:

  1. err = null、results = []
  2. err = null、results = null
  3. err =エラードキュメント、results = null
36
Colin

クエリによって異なります。 findの場合、results == []findOneの場合、results == null。他に問題がなければ、エラーは発生しません。

43
randunel

条件は有効であるが一致が見つからなかった場合:

  • finderrnullresult[]

  • findOneおよびfindByIderrnullresultnull

ただし、一部の条件が無効であった場合(たとえば、フィールドがstringであるがobjectを渡した場合、または無効な_idを渡した場合)

3つすべての場合:err{..}resultundefined

8
cute_ptr