【发布时间】:2020-05-20 11:45:46
【问题描述】:
我现在正在学习 MongoDB 和 mongoose。我在猫鼬中有一个存档和一个用户模式:
存档.js
var mongoose = require('mongoose');
var User = require('../users/user');
var notesSchema = new mongoose.Schema({
author: User.userId,
text: String,
files:[String]
});
var archiveSchema = new mongoose.Schema({
name: String,
priority: String,
deadline: Date,
status: String,
assigned_memnbers: [User.userId],
notes: [notesSchema],
});
archiveSchema.virtual('archiveId').get(function() {
return this._id;
});
module.exports = mongoose.model('Archive', archiveSchema);
user.js:
var mongoose = require('mongoose');
var userSchema = new mongoose.Schema({
username: String,
mail: String,
bio: String,
password: String
});
userSchema.virtual('userId').get(function() {
return this._id;
});
module.exports = mongoose.model('User', userSchema);
当我运行我的服务器时,我得到了错误
TypeError: Invalid value for schema path `author`, got value "undefined"
问题来自author: User.userId,但是我不知道如何在两个表之间进行引用。
欢迎任何有关如何解决此问题或改进整体设计的意见。谢谢你。
【问题讨论】:
标签: node.js mongodb mongoose nosql schema