node.js – Mongodb gibt Fehler aus, wenn es mit anderen Tabellen-IDs verknüpft ist
怪我咯
怪我咯 2017-05-16 13:39:32
0
1
443
//models/contents.js
var mongoose = require('mongoose');
module.exports = new mongoose.Schema({
    //关联字段 - 内容分类的id
    category:{
        type:mongoose.Schema.Types.ObjectId,
        ref:'Content'    
    },
    title:String,    
    description:{
        type:String,
        default:''
    },
    content:{
        type:String,
        default:''
    }
});

//schema/content.js

var mongoose = require('mongoose');
var contentsSchema = require('../schemas/contents');
module.exports = mongoose.model('Content',contentsSchema);


//routers/admin.js

router.post('/content/add',function(req,res){
    console.log(req.body)
})
打印的不是id而是[object Object]   这是什么原因
{ category: '[object Object]',
  title: 'aaa',
  description: 'aaaa',
  content: 'aaaa' }
怪我咯
怪我咯

走同样的路,发现不同的人生

Antworte allen(1)
黄舟

从源头上来说,Mongoose通过ref和population,来简化了MongoDB中的手工reference操作。

在Mongoose中,Schema运用了ref来进行collection之间的关联:

1、写的时候,需要自己去关照写的部分,分头写入两个collection;

2、读取的时候,需要调用population,来简化关联的部分。具体参考下面的链接:

http://mongoosejs.com/docs/po...

您的代码中需要使用mongoose中的populate来关联到相关的object_id.

供参考。

Love MongoDB! Have fun!

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage