【发布时间】:2017-06-12 02:06:46
【问题描述】:
我有两个模型
第一个模型
// grab the things we need
var mongoose = require('mongoose');
// create a schema
var categorySchema = new mongoose.Schema({
name : String,
description: String,
active : Boolean,
createdDate: {type: Date, default: Date.now},
updatedDate: {type: Date, default: ''}
});
var category = mongoose.model('Category', categorySchema);
module.exports = category;
第二个模型
var mongoose = require('mongoose');
// create a schema
var productSchema = new mongoose.Schema({
product_name: String,
manufacturer: String,
category : {type: mongoose.Schema.ObjectId, ref: 'Category'}
});
var user = mongoose.model('Product', productSchema);
module.exports = user;
这是我使用的模型:
module.exports.CreateProdct = function(Channel_Object, callback) {
product = new Product({
product_name: Channel_Object.product_name,
manufacturer: Channel_Object.manufacturer,
category : Channel_Object.category,
});
product.save(function(err, customer) {
if (err)
console.log(err)
else
callback(customer);
});
}
保存产品架构时出现错误:
{ category:
{ [CastError: Cast to ObjectID failed for value "{ name: 'bus', descriptio
n: 'dskflsdflsdkf', active: true }" at path "category"]
这是项目的 json
{
"product_name": "ppsi",
"manufacturer": "fanta",
"category" : {
"name" : "bus",
"description": "dskflsdflsdkf",
"active" : true
}
}
这是产品模型的 JSON。我在产品模型中嵌入了类别,它显示“Cast to ObjectID failed for value”。
【问题讨论】:
标签: node.js mongoose mean-stack