私のコレクションには以下のマングーススキーマが書かれています。しかし、マングーススキーマは、オブジェクトに挿入されているオブジェクトやアイテムのデータ型で厳密なチェックを実行していないようです。 ForExample:私は変更する場合mongodb insert()always successful
"activity_performed":真
に "activity_performed":データを挿入しながらのMongoDBにエラーを与えるものではありません
"adsfsadfを" 。私は間違って何をしていますか、データを挿入している間、どのようにmongooseとmongodbに厳密な型チェックを強制することができますか?
function initSchema() {
activitySchema = mongoose.Schema({
observationNumber : Number,
observation_data : [{
child_id : Number,
child_observation_data : [{
activity_performed: Boolean,
observation_date: String,
teacher_id: Number
}]
}]
});
}
function insertData() {
var activityModelObject = new ActivityModel();
activityModelObject.observationNumber = 1593570;
activityModelObject.observation_data = {"child_id" : 236, child_observation_data:{"activity_performed":"adsfsadf", "observation_date": "16May2016", "teacher_id":789}};
activityModelObject.save(function(err, savedObject) {
if(err) {
console.error("error in saving to mongodb", err);
return;
}
console.log("succesffully saveed the data: ", savedObject);
});
}
ログイン:
successfully saved the data: { observation_data:
[ { child_observation_data: [Object],
_id: 57d07545b839132412da0755,
child_id: 236 } ],
_id: 57d07545b839132412da0754,
observationNumber: 1593570,
__v: 0 }
これが失敗している必要があります!しかし何らかの理由でmongodbが成功したと報告します