Mongoose 如何真正设置猫鼬默认值,尤其是布尔值?
我有以下模式:Mongoose 如何真正设置猫鼬默认值,尤其是布尔值?,mongoose,find,boolean,default,Mongoose,Find,Boolean,Default,我有以下模式: const profileSchema = new Schema({ created: { type: Date, default: Date.now }, readonly: { type: Boolean, default: false } }); const Profile = mongoose.model('profile',profileSchema); 但是,我发现如果查询“日期”,则会在文档上设置日期,但如果查询“只
const profileSchema = new Schema({
created: {
type: Date,
default: Date.now
},
readonly: {
type: Boolean,
default: false
}
});
const Profile = mongoose.model('profile',profileSchema);
但是,我发现如果查询“日期”,则会在文档上设置日期,但如果查询“只读”,则不会将其设置为false,但会在文档上返回false。例如:
Profile.find({readonly: false})
将不返回任何文档。但是,如果我这样做:
Profile.find({})
我将收到所有文件,并且“只读”属性将被列为“假”
同时,如果我在创建文档时:
var newProfile = { readonly: false };
new Profile(newProfile).save();
上面相同的find命令将列出此文档。布尔值的默认值似乎是隐式设置的,并且在读取文档而不是查询文档时可用。是否有办法确保在所有文档上设置和查找日期属性,就像“创建”日期属性一样,还是必须在所有新文档上手动设置它?而不是
readonly: {
type: Boolean,
default: false
}
请尝试将“”设置为false,这样它将:
readonly: {
type: Boolean,
default: 'false'
}
根据mongoose,mongoose将以下值转换为false:
- “假”
- 0
- “0”
- “不”
- 而不是
readonly: {
type: Boolean,
default: false
}
请尝试将“”设置为false,这样它将:
readonly: {
type: Boolean,
default: 'false'
}
根据mongoose,mongoose将以下值转换为false:
- “假”
- 0
- “0”
- “不”