草庐IT

node-schedule

全部标签

node.js - MongoDB objectID 陌生人错误

在Heroku上使用MEANStack部署,我能够使用mongoDB的findOne和deleteOneGET和DELETE文档>功能。但是,当我尝试使用mongoDBupdateOne/update函数PUT文档时,我收到此错误(服务器端):The_idfieldcannotbechangedfrom{_id:ObjectId('56d4d71191fdc81100974d0b')}to{_id:"56d4d71191fdc81100974d0b"}.看起来很奇怪,因为我在服务器代码中为updateOne使用了与findOne相同的方法(同样,findOne工作正常):app.get

node.js - 如何使用 Node JS 将 mongoDB 查询记录到终端

我正在使用以下代码将模式模型添加到我的数据库...db.on('error',console.error);db.once('open',function(){varSchema=newmongoose.Schema(name:String,_id:String});varUser=mongoose.model('User',Schema);newUser({name:"Helpme!",_id:"12345"}).save(function(err,doc){if(err)throwerr;elseconsole.log('saveusersuccessfully...');cons

node.js - 如何使用 mongoose 和 nodejs 删除模型中关于 id 的项目

这是我的模式varpurchaseOrderModel=function(){varitemSchema=mongoose.Schema({strBarCode:{type:String},strItemName:{type:String},strQuantity:{type:String}});varpurchaseOrderSchema=mongoose.Schema({strSupplierID:{type:String,required:true},strInvoiceNo:{type:String,required:true},dteInvoiceDate:{type:Dat

node.js - Express Mongoose Model.find() 返回未定义

嘿,有问题。尝试发送包含Mongo数据的Express响应。这是我的Express服务器的代码varTask=require('./modules/Task');app.get('/get-all-tasks',function(req,res){res.setHeader('Content-Type','application/json');console.log(Task.getAllTasks());//returnsundefinedres.json({msg:"Hej,thisisatest"});//returnsobject});这是单独文件中的Mongoose模型var

node.js - 在 Node 中存储来自 mongoDB 的集合结果

我是node新手,我已经成功从mongoDB读取数据。但我想将集合中的全部数据存储到nodejs中的一个变量中,因为我想在索引页面中使用它们。不知道怎么保存。//ConnectionURLvarurl='mongodb://localhost:27017/test';//UseconnectmethodtoconnecttotheServerMongoClient.connect(url,function(err,db){assert.equal(null,err);console.log("Connectedcorrectlytoserver");seriescollection=d

node.js - 我可以将 Mongoose 连接到分片的 MongoDB 实例吗?

使用Mongoose@4.2.6,我想连接到一个分片的MongoDB实例。consturl="mongodb://user:pass@localhost:27022,localhost:27023/db";//ThisneverresolvesMongoose.connect(url,(err,db)=>{...});当我使用nativeMongoDB@2.0.48库(与Mongoose使用的版本相同)建立连接时,它可以正常工作。consturl="mongodb://user:pass@localhost:27022,localhost:27023/db";//Thisresolve

node.js - mongodb shell 和 node.js 中的相同查询表现不同

为什么会这样?对这种差异有合理的解释吗?例如我有一个数据库结构;{id:"1"category:{name:"name1"groups:[{groupName:"groupName1"title:""},{groupName:"groupName2"title:""}]}}查询如下;db.collection.aggregate({$unwind:"$category.groups"},{$match:{"category.groups.groupName":"groupName2","category.name":"name1"}})在mongoshell中它返回为;{id:"1"c

node.js - Mongoose - 只返回数组的内容,而不是它的名字

我的Mongoose查询返回了这样一个JSON:[{"messages":[{"body":"thisisthebody","sender":"John","_id":"56ffbabb9a984f0804e8b3a0"},{"body":"messagebody","sender":"Jake","_id":"56ffc60c68a75ab835a7e097"}]}]我想得到这个(只有数组的内容,没有它的名字):[{"body":"thisisthebody","sender":"John","_id":"56ffbabb9a984f0804e8b3a0"},{"body":"mes

node.js - 按日期查询不起作用

我正在尝试返回一天中创建的每个文档的搜索结果。以下是我使用的查询。varquery=Document.find({}).populate('contacts');vargte=moment(req.query.date,'DD-MM-YYYY').startOf('Day');varlte=moment(req.query.date,'DD-MM-YYYY').endOf('Day');query.where('dates.createdAt').gte(gte).lt(lte);此查询适用于某些天,但并非全部。我似乎无法理解这种行为。请帮忙。查询字符串中的日期格式为DD/MM/YYY

node.js - 将参数添加到mongodb中更新查询的结果

db.collection.update({id:id_},{$set:{name:jp.name,}},{upsert:true},function(err,result){res.json({data:result});});我返回result来决定它是更新还是插入。我在客户端查看nModified。如果是updatenModified返回1,否则如果是insert则返回0。除了result我想返回id字段。result.id=id_;res.json({data:result});但是没有用。如何使用更新查询返回参数? 最佳答案