【发布时间】:2014-03-14 06:55:12
【问题描述】:
我是 NodeJS 和 MongoDB 的新手,在创建示例应用程序时遇到了以下问题
// ************ this is testusers.js file ************//
var userdetails = require('userdetails');
var mongoose = require('mongoose');
var schema = mongoose.Schema;
var geekDetails = new schema({
description: String,
details: {
type: mongoose.Schema.Types.ObjectId,
ref: 'userDetails'
}
});
module.exports = {
model: mongoose.model('geekDetails',geekDetails),
schema: geekDetails
};
// ************ this is user.js file ************//
var mongoose = require('mongoose');
var schema = mongoose.Schema;
var userDetails = new schema({
firstName: String,
lastName: String,
email: String,
password: String
});
module.exports = {
model: mongoose.model('userDetails',userDetails),
schema: userDetails
};
// ************ this is create.js file [used to save the details to DB] *******//
var testusers = require('testusers.js');
var mongoose = require('mongoose');
adduser = function(firstName,lastName,email,password,passwordConfirmation,description,callback){
new testusers.model({
description: description,
details: {
firstName: firstName,
lastName: lastName,
email: email,
password: password
}
}).save(function(err,result){
if (err){
callback(err,null);
}
else {
callback(null,result);
}
});
当我尝试保存详细信息时,它返回以下错误“cast to objectid failed for value object object at path 'details'” 我确定我在架构上做错了,但我不能想不通。
提前致谢
【问题讨论】:
-
用
mongoose.Types.ObjectId怎么样?