似乎无法导入子文档

时间:2017-01-17 17:56:51

标签: mongodb express mongoose

我正在尝试将子文档导入到Express / Mongoose API中。

我有以下结构:

   models
       |-profile
       |    |-phones.js
       |
       |-profile.js

这是phones.js架构文件:

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var PhonesSchema = new mongoose.Schema({
  phone_number:{ type: String },
  phone_type:{ type: Number }
})



module.exports = mongoose.model('PhonesSchema', PhonesSchema);

这是profile.js父文档,它位于models文件夹中:

var mongoose = require('mongoose');
var Schema = mongoose.Schema;  

var PhonesSchema = require('./profile/phones');

var ProfileSchema = new Schema({

  //PROFILE INFO
  owner_id: {
    type: String,
    require: true,
    unique: true
  },
  linkedIn:{
    type: String
  },
  phones:[PhonesSchema],
});

module.exports = mongoose.model('Profile', ProfileSchema);

但它不起作用。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

似乎问题更多的是您导出PhonesSchema的模型而不是模式。而不是使用

model.exports = mongoose.model('PhonesSchema',PhonesSchema)

你应该使用:

model.exports = PhonesSchema

参考:https://mongoosejs.com/docs/subdocs.html