Node.js 是否有方法将用户Id传递给架构?

Node.js 是否有方法将用户Id传递给架构?,node.js,mongodb,express,mongoose,mongoose-schema,Node.js,Mongodb,Express,Mongoose,Mongoose Schema,我有一个用户模式和一个考试模式,我想把用户的id传递给考试模式 const ExamSchema = new mongoose.Schema({ -----> _id: [{ class: { type: String, required: true }, module: { type: Number,required:true }, date: {type: Date, required: true } }] 上面写着_id-我希望它是用户的id!我应该这样

我有一个用户模式和一个考试模式,我想把用户的id传递给考试模式

const ExamSchema = new mongoose.Schema({
-----> _id: [{
    class: { type: String, required: true },
    module: { type: Number,required:true },
    date: {type: Date, required: true }
  }]
上面写着_id-我希望它是用户的id!我应该这样做还是在用户模式上添加考试模式?像这样

const UserSchema = new mongoose.Schema({
  username: { type: String, require: true },
  email: { type: String, required: true, unique: true },
  password: { type: String, required: true },
  active: { type: Boolean, default: true },
  exam: [{
    class: { type: String, required: true },
    module: { type: Number,required:true },
    date: {type: Date, required: true }
  }]
});
检查猫鼬“填充”

文档中的一部分

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

const personSchema = Schema({
  _id: Schema.Types.ObjectId,
  name: String,
  age: Number,
  stories: [{ type: Schema.Types.ObjectId, ref: 'Story' }]
});

const storySchema = Schema({
  author: { type: Schema.Types.ObjectId, ref: 'Person' },
  title: String,
  fans: [{ type: Schema.Types.ObjectId, ref: 'Person' }]
});

const Story = mongoose.model('Story', storySchema);
const Person = mongoose.model('Person', personSchema);
到目前为止,我们已经创建了两个模型。我们的Person模型将其stories字段设置为ObjectId数组。ref选项告诉猫鼬在种群中使用哪个模型,在我们的例子中是故事模型。我们存储在这里的所有ID必须是来自故事模型的文档ID

在您的情况下,只需在考试模式中创建一个用户id,并参考用户模式的id即可

const ExamSchema = new mongoose.Schema({
    user_id: {type: Schema.Types.ObjectId, ref: 'User' },
    class: { type: String, required: true },
    module: { type: Number,required:true },
    date: {type: Date, required: true }
  })

非常感谢。但是我应该将这两个模式放在同一个文件中,还是可以放在不同的文件中?如果需要,可以放在不同的文件中。只需导入模型就可以了。