Как я могу найти документ, который делает .findOne
, где поле ObjectId
не задано? Я не могу найти, должен ли я искать по null
или undefined
или что-то еще.Mongooose query где ObjectId имеет значение null?
В приведенном ниже примере, я пытаюсь найти документ, в котором, как известно значение «электронная почта», но идента до сих пор не установлено:
var joinRequest = new mongoose.Schema({
email: { type: String, unique: true, lowercase: true, trim: true },
code: { type: String, uppercase: true, trim: true, select: false },
lastSent: { type: Date },
userId: { type: mongoose.Schema.Types.ObjectId, select: false }
});
Затем снова, может ли ObjectId
поле когда-либо ноль? Должен ли я использовать String
здесь?
в меру моих _id знаний всегда будет иметь только для чтения GUID присвоенные к нему –
Это не поле _id. Это поле с типом ObjectId. Я пытаюсь использовать undefined, однако WebStorm выделяет его как переменную, которая заставляет меня беспокоиться. –
Я не думаю, что функция 'findOne' будет смотреть на свойства с неопределенным значением при сопоставлении, таким образом, чтобы каждый раз находить самый первый документ (я тоже не думаю, что mongodb будет хранить undefined), вместо этого поиск по' null 'и хранить' null' –