Mongoose Node:如何在另一个对象中引用一个对象数组?

时间:2016-06-09 05:03:37

标签: node.js mongodb mongoose

我有两个模式 - 用户和供应商,并试图在用户mongo文档中保存供应商数组。我正在尝试像这样创建引用数组;

vendors: { type: 'array', of: { type: 'Vendor'} }

这会抛出以下错误;

  

TypeError:在非对象上调用的Object.defineProperty   Function.defineProperty(native)

我也试过像这样创建refrence对象;

vendors: [Vendor]

这次没有抛出错误,但供应商未保存在用户

1 个答案:

答案 0 :(得分:0)

试试这个例子 -

var mongoose = require('mongoose');

// instantiate user model
var User = mongoose.model('User');  // Assumed that you named your model `User`
var user = new User({
  name: 'test',
  gender: 'male',
  vendors: vendor  // vendor model schema instance
});

// save the user
user.save(function(err) {
  if (err) throw err;
  console.log('User created!');
});

希望这可以帮助您解决问题!!