Javascript express js和mongoose的一些概念部分
如果我在Javascript express js和mongoose的一些概念部分,javascript,node.js,mongodb,mongoose,mongoose-schema,Javascript,Node.js,Mongodb,Mongoose,Mongoose Schema,如果我在router.post调用中使用const homeModel=require('../models/home'),那么homeModel将为我提供整个homeModel对象。但是,当我在全局中使用const homeModel=require('../models/home')时 homeModel生成一个空对象({}) 为什么会这样 Routes/Comment.js const mongoose = require('mongoose'); const { post } = req
router.post
调用中使用const homeModel=require('../models/home')
,那么homeModel
将为我提供整个homeModel
对象。但是,当我在全局中使用const homeModel=require('../models/home')
时
homeModel
生成一个空对象({}
)
为什么会这样
Routes/Comment.js
const mongoose = require('mongoose');
const { post } = require('../routes/auth');
const user = require('./user');
let homePageSchema = new mongoose.Schema({
image: String,
author: {
id: {
type: mongoose.Schema.Types.ObjectId,
ref: 'user'
},
name: String
},
postDescription: String,
like: [ String ],
disLike: [ String ],
comments: [
{
type: mongoose.Schema.ObjectId,
ref: 'comment'
}
]
});
module.exports = mongoose.model('Home', homePageSchema);
const router=require('express')。router();
const userModel=require('../models/user');
const commentModel=require('../models/comment');
//导入中间件
常数{
授权中间件
}=需要('../middleware/middleware');
router.post('/comment/:id',AuthMiddleWare,(req,res)=>{
//重要的
const homeModel=require('../models/home');//{
如果(错误){
控制台日志(err);
}否则{
//查找当前用户
userModel.findOne({
电子邮件:req.session.passport.user
},(错误,用户)=>{
如果(错误){
控制台日志(err);
}否则{
//创建当前用户
//职位
//创建}
})
})
Models/home.js
const mongoose = require('mongoose');
const { post } = require('../routes/auth');
const user = require('./user');
let homePageSchema = new mongoose.Schema({
image: String,
author: {
id: {
type: mongoose.Schema.Types.ObjectId,
ref: 'user'
},
name: String
},
postDescription: String,
like: [ String ],
disLike: [ String ],
comments: [
{
type: mongoose.Schema.ObjectId,
ref: 'comment'
}
]
});
module.exports = mongoose.model('Home', homePageSchema);
路线和路径在这里,照片在这里
const homeModel=require(“../models/home”);
将获得默认导出,该导出可能为空。这取决于在'../models/home'
中导出的内容。添加您的主模型时,您的导出肯定存在一些问题。如果您共享。/models/home
我更新了我的帖子……我认为我的模块导出正确,因为当我时t homeModel=require('../models/home');
goball然后当它定义const homeModel=require('../models/home');
在router.post('/comment/:id'),它是给我整个homeModel对象时,它会给出一个{}/空的对象