草庐IT

node.js - Express 在 Jade 中显示 mongodb 文档

我正在学习Node、Express、Jade和Mongodb。我无法在jade中显示我的mongodb文档。我无法自己弄清楚。我使用console.log成功记录了所有文档,并且它正确显示了所有文档。请不要Mongoose或其他解决方案。只是如何构建此代码。我已经连接到数据库,在终端中显示了所有文件。如何能够将它传递给Jade并在view.jade中显示它?谢谢。这是我的app.js代码varexpress=require('express');varapp=express();varpath=require('path');varfavicon=require('serve-favi

javascript - Mongoose 错误填充虚拟

我正在使用node和mongo开发一个项目。我在本地拥有它并在服务器上“实时”进行测试。该项目的本地副本完全没有问题,但实时版本崩溃并出现错误:/root/farm_api/node_modules/mongoose/lib/model.js:3002thrownewError('Ifyouarepopulatingavirtual,youmustsetthe'+^错误:如果你正在填充一个虚拟的,你必须设置localField和foreignField选项在getModelsMapForPopulate(/root/farm_api/node_modules/mongoose/lib/

node.js - MongoDB API 分页

想象一下当客户端有限制为10的对象提要时的情况。当需要下10个时,它会发送跳过10个并限制10个的请求。但是如果自第一次请求偏移量==0以来有一些新对象被添加(或删除)到集合中怎么办。然后在第二次请求(偏移量==10)响应可能有错误的对象顺序。按创建时间排序在这里不起作用,因为我有一些提要是通过一些数字字段排序形成的。 最佳答案 您可以添加时间字段,例如created_at或updated_at。它必须在创建或修改文档时更新,并且该字段必须是唯一的。然后使用$gte和$lte以及在此时间字段上的排序查询数据库的时间范围。这确保了在时

node.js - 覆盖 Mongoose 模型方法

我有以下express路线:app.post('/users/me',(req,res)=>{varbody=req.body.email;User.find({email:body}).then((user)=>{res.send({user});},(e)=>{res.status(400).send(e);});});在我的用户模型上,我有以下方法限制返回到电子邮件和_id的结果:UserSchema.methods.toJSON=function(){varuser=this;varuserObject=user.toObject();return_.pick(userObje

javascript - 了解 ReactJS 和 NodeJS 应用程序如何工作

我正在尝试学习ReactJS,但我很难理解它应该如何与NodeJS一起工作,比方说与Express一起工作。到目前为止我理解ReactJS是“MVC”中的“V”这很简单,我已经可以使用create-react-app编写代码了我是这样理解的:结合React和Express的“自然”方式是简单地在React中编写前端,在Express中编写API(例如使用Mongo)。这样我们就可以简单地从React对我们的/api进行ajax调用并显示数据还可以使用React进行服务器端渲染,这需要更多的配置。这样我们就不会从React调用/api,我们只是使用React编写可以被Express渲染的

node.js - Mongodb 模式在几秒后清空

当我请求将新对象保存到我的mongodb时,它被保存了,几秒钟后该模式中的所有内容都消失了。在下面的屏幕截图中,您可以看到这种情况,我使用第一个命令检查模式是否为空,然后我请求保存一个成功完成的新对象,几秒钟后您可以看到该对象有消失了。express端点如下所示:router.post('/bookdate',passport.authenticate('jwt',{session:false}),(req,res)=>{constuserId=req.user._idconstappartmentNumber=req.user.apartmentNumber;constrequest

javascript - 类型错误 : Cannot create property '_id' on string

我正在创建简单的restAPI我有一个用于post/data的端点,用于将数据从外部API保存到MongoDB,这是我目前所拥有的:app.post('/data',(req,res)=>{leturl='https://api.themoviedb.org/3/movie/401478/reviews?api_key=4d9c9de3bdf0d3b6837c49c086e3b190';request(url,function(error,response,body){db.collection('data').insert(body,(err,result)=>{if(err){re

node.js - 如何将数据引用从一个集合引用到另一个集合? MongoDB

router.get('/productSelect',(req,res,next)=>{productSchema.aggregate([{$lookup:{from:'supplierSchema',localField:'supplierId',foreignField:'_id',as:'supplier'}}],(err,productSchema)=>{if(err)res.json(err);elseres.json(productSchema);});});我想从集合中获取数据[{"_id":"5ba26ff33318b51e20a80fb3","productExis

javascript - module exports = mongoose 模型在 NodeJs 中做什么

我即将进入某种前端React世界,并且主要使用import和exports等语句。我知道有很多文章强调如何我们可以在nodeJS中使用导入和导出,我也知道这可能与导入和导出没有任何关系。不管怎样,我开始学习后端(NodeJs)和mongoDB。我正在使用express框架和包名mongoose。在内部,模型,我们正在创建一个如此简单的模式constmongoose=require('mongoose')constbookSchema=newmongoose.Schema({name:String,genre:String,authorID:String})module.exports=

JavaScript 堆内存不足 - 插入 mongodb 时出错

我想在MongoDB中插入1500000个文档。首先,我查询一个数据库并从那里获得15000名讲师的列表,并且我想为每个讲师插入100门类(class)。我运行两个循环:首先它遍历所有讲师,其次,在每次迭代中它将为该id插入100个文档,如下面的代码所示:constinstructors=awaitInstructor.find();//constinsrtuctorcontains15000instructorinstructors.forEach((insructor)=>{for(leti=0;i{console.log(result._id);Instructor.findBy