Ответ 1
Это зависит от запроса. Если это find
, то results == []
. Если это findOne
, то results == null
. Нет ошибок, если все остальное в порядке.
Я немного смущен, читая документацию Mongoose.
Если я запускаю запрос в mongoose, который не соответствует никаким документам в коллекции, каковы значения err
и results
в функции обратного вызова callback(err, results)
? Я просто не знаю, что Монгуосе считает "ошибкой" . Как математик, возврат пустого набора (т.е. results
array empty) представляется совершенно корректным и не должен быть "ошибкой" - запрос выполнялся отлично, не было только соответствующих документов. С другой стороны, некоторые могут считать это "ошибкой" . Из документов mongoose:
err
= null, results
= []err
= null, results
= nullerr
= документ с ошибкой, results
= nullЭто зависит от запроса. Если это find
, то results == []
. Если это findOne
, то results == null
. Нет ошибок, если все остальное в порядке.
Если условия действительны, но совпадений не найдено:
find
: err
is null
, result
is []
findOne
и findById
: err
is null
, result
is null
Однако, если какое-либо условие было недопустимым (например, поле string
, но вы передаете object
, или вы передаете недопустимый _id
)
Для всех трех: err
is {..}
, result
is undefined