所以这是我的main.js:
const mongoose = require('mongoose');
const proModel = require('./doc/proModel');
const cabModel = require('./doc/cabModel');
mongoose.connect('mongodb://127.0.0.1/DocTest');
const pro1 = new proModel({
_id: new mongoose.Types.ObjectId(),
Nom: "Ok",
Metier: {
Pro: false,
Secretaire: true
}
});
const cab1 = new cabModel({
InfoCab: {
Nom: "WONKLAB"
}
});
const handleError = function (err) {
console.error(err);
};
pro1.save(function (err) {
if (err) return handleError(err);
});
if (pro1.Metier.Pro != false) {
cab1.Pro._idPro = pro1._id;
} else if (pro1.Metier.Secretaire != false){
cab1.Pro._idSecretaire = pro1._id
}
cab1.save(function (err) {
if (err) return handleError(err);
});
如果我有这个,我在shell中有最奇怪的输出:
if (pro1.Metier.Pro = true) { // turning != false into =true
cab1.Pro._idPro = pro1._id;
} else if (pro1.Metier.Secretaire = true){ // same here
cab
这样做会给我输出
MongoDB Enterprise > db.pros.find().pretty()
{
"_id" : ObjectId("59c587e4d76f5325dbf3c241"),
"Nom" : "Ok",
"Metier" : {
"Pro" : true, // Stated as false previously
"Secretaire" : true
},
"__v" : 0
当Pro被声明为false且秘书为true时。 任何人都可以解释这背后的机制。我得到了修复,但我想了解这里的逻辑。
干杯,