所以我正在构建一个Web应用程序,我有很多工作。但是,我试图将我的user._id链接到我的项目数据库。但当我尝试使用邮递员发布项目时,应用程序崩溃说它无法读取属性' _id'为null。我知道我错过了一些东西,但老实说,我无法弄清楚我需要实现的其他代码。任何帮助都会很棒。感谢
以下是UserSchema的代码:
Sheet2
以下是ItemSchema的代码:
const mongoose = require('mongoose');
const passportLocalMongoose = require("passport-local-mongoose");
const UserSchema = new mongoose.Schema({
username: {
type: String,
trim: true,
unique: true,
required: true,
minlength: 3,
maxlength: 15
},
firstName: {
type: String,
required: true,
minlength: 3,
maxlength: 15
},
lastName: {
type: String,
required: true,
minlength: 3,
maxlength: 15
},
email: {
type: String,
unique: true,
required: true
},
resetPasswordToken: String,
resetPasswordExpires: Date,
isAdmin: {
type: Boolean,
default: false
}
});
UserSchema.plugin(passportLocalMongoose);
module.exports = mongoose.model("user", UserSchema);
以下是抛出错误的路线的代码:
const mongoose = require('mongoose');
const User = require('./user');
const ItemSchema = new mongoose.Schema({
name: {
type: String,
required: true,
minlength: 3,
maxlength: 20
},
description: {
type: String,
required: true
},
price: {
type: Number,
required: true
},
createdBy: {
id: {
type: mongoose.Schema.Types.ObjectId,
ref: "User"
},
username: String
},
createdAt: {
type: Date,
default: Date.now
}
});
module.exports = mongoose.model("items", ItemSchema);
答案 0 :(得分:-1)
您需要以邮递员的json格式发送数据,例如:
{'id':1, 'name':'jhon doe', 'email':'jhondoe@example.com'}
req.body.id
不是req.user._id