Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 指定模型的Mongoose multi-ref_Node.js_Mongodb_Mongoose_Schema_Ref - Fatal编程技术网

Node.js 指定模型的Mongoose multi-ref

Node.js 指定模型的Mongoose multi-ref,node.js,mongodb,mongoose,schema,ref,Node.js,Mongodb,Mongoose,Schema,Ref,我有以下计划: var user = Schema({ id: Number, name: String, surname: String, role: { type: Schema.Types.ObjectId, ref: "" }//member or crew property: Number }); var member = Schema({ cod_id: Number, aa: String, bb: String, }); var crew =

我有以下计划:

var user = Schema({
  id: Number,
  name: String,
  surname: String,
  role: { type: Schema.Types.ObjectId, ref: "" }//member or crew
  property: Number
});

var member = Schema({
  cod_id: Number,
  aa: String,
  bb: String,
});

var crew = Schema({
  cod_id: Number,
  cc: String,
  dd: String,
});
成员和工作人员,他们都是用户,但他们有不同的属性

唯一相等的属性是:姓名、姓氏、角色和属性

我想了解的是,如果能够做到这一点,在用户中指定可以是member或crew的role属性,请参考所讨论的特定模型

一切都源于需要在单个模型中具有property属性,而不必将此属性放在成员或乘员中,否则当我必须执行搜索时,我必须执行两个操作,一个在模型成员中,一个在乘员中,等待不会出现重复问题


您能给我一些建议吗?

您在用户中的角色是一个数组,可以同时引用成员和工作人员,还是一个对象可以同时包含成员或工作人员(给定用户文档的任何一个)?@srinivasy:对不起,我更正的不是数组。如果我理解正确,你的问题必须涉及到成员和船员,然后是第一个。我已经看过了,但我不确定这就是我想要的:是的,我指的是refPath,这是我上次在这个场景中使用的,也许你也可以研究一下: