当我在同一个回调中插入不同的集合时出现问题,对不起,我的英语是谷歌翻译
我的模特
var mongos = require("mongoose");
var Schema = mongos.Schema;
var bodegas = new Schema({
idmayor:String,
bodegas:String
});
exports.bodegas = mongos.model("bodega",bodegas);
var mongos = require("mongoose");
var Schema = mongos.Schema;
var empleados = new Schema({
idmayor:String,
nombre:String,
correo:String,
contraseña:String,
bodega:String,
activa:Boolean
});
exports.empleados = mongos.model("empleado",empleados);
和我的控制
exports.ingrese = function (req, res, next) {
var id = req.session.paentro.id;
var nombre = req.body.nombre;
var correoElectronico = req.body.correo;
var bodega = req.body.bodega;
var InfoNuevoEmpleado = {
idmayor: id,
nombre: nombre,
correo: correoElectronico,
contraseñ a: "",
bodega: bodega,
activa: false
};
var nuevoEmpleado = new madb.empleados(InfoNuevoEmpleado);
nuevoEmpleado.save(soyanonima);
function soyanonima(err, resultado) {
if (err) {
res.send('Ha ocurrido un error porfavor intentalo mas tarde');
} else {
console.log('se ha ingresado como: \n' + resultado);
var titulo = 'Hola nuevo abministrador';
var mensage = 'hola se te ha creado una cuenta en el <b>manejador de inventario</b> ' +
'porfavor dirigete al enlase abjunto para cambiar la contraseña ' +
'<a href="localhost:3000/empleado/' + resultado.id + '"> aqui </a>';
correo.enviar(titulo, mensage, correoElectronico);
var InfoBodega = {
idmayor: resultado.id,
bodega: resultado.bodega
};
var nuevaBodega = new bodega.bodegas(InfoBodega);
console.log(InfoBodega);
nuevaBodega.save(function () {
if (err) {
console.log("hay jueputa echele agua");
} else {
res.send("Guardado");
}
});
}
}
}
当我尝试在另一个集合中插入第二次时,会产生问题。
答案 0 :(得分:0)
问题在于您尝试使用未定义的模型创建对象,您已将bodega的变量设置为等于req.body.bodega,其中此值可能是字符串。然后,当你试图得到一个字符串的bodegas时,未定义为什么你会得到错误。相反,您应该导入您拥有模型的文件var bodega_model = require('bodega.js')
,并使用var nuevaBodega = bodega_model.bodegas(infoBodega)
定义您的对象,这样可行。尝试通过将bodega模型打印到控制台来调试它。