草庐IT

heroku-buildpack-nodejs

全部标签

node.js - Mongoose 通过 $set a value if NOT undefined 进行更新 (NodeJS)

检查未定义值的正确方法是什么?我想要做的是有一个PUT方法来更新那些不为空的字段。例如,如果我发送req.body.name='John'而没有发送req.body.job我希望我的请求只更改名称。部分代码:router.put('/:id',(req,res)=>{constquery={_id:req.params.id};constupdate={$set:{name:req.body.name,job:req.body.job}};User.findOneAndUpdate(query,update,(err,userUpdated)=>{if(err){console.log

node.js - Nodejs - Mongoose 连接到定义的 MongoDB

我有一个连接到MongoDB的nodejs应用程序,这个应用程序定义了自己的模型和模式。出于某种原因,我需要创建另一个nodejs应用程序,它连接到另一个应用程序连接到的同一个MongoDB。那么,我是否必须定义相同的模型?有没有办法从Mongoose中提取模型? 最佳答案 您不能像那样从Mongoose中提取模型,但是您可以使用没有Mongoose的MongoDB连接,具体取决于您需要做什么。例如:在其他应用中执行此操作:MongoClient=require('mongodb').MongoClient;MongoClient.

mongodb - 如何将我的本地默认 Meteor Mongo 数据库的数据推送到 Heroku mLabs 以部署在 Heroku 上的应用程序?

我使用随Meteor安装的默认Mongo数据库在我的本地开发Meteor环境中设置我的应用程序数据。我的应用程序已准备好在Heroku上部署,但我打算将我的数据与其一起使用(类似于Rails“迁移”)。在Heroku中,我添加了mLabs插件并设置了“MONGO_URL”变量。如何将我的本地应用程序数据库推送到我的mLabs实例以在Heroku上部署? 最佳答案 这是对我有用的。1。转储我的本地mongo数据库在应用程序文件夹中的终端(不是mongoshell)中,mongodump--port=3001-o../dump2。将db

json - 使用 Mongoose/NodeJS 修改具有多个键的嵌套对象而不替换现有键

架构和模型:varschema=newmongoose.Schema({timestamp_hour:Date,deviceID:Number,minutes:{'0':{temperature:Number},'1':{temperature:Number},...'59':{temperature:Number}}},{collection:'devices'});varmodel=mongoose.model('deviceData',schema);现在,在POST请求中,我从外部来源接收到一些数据,其中包含时间戳、设备ID和温度值。我的主键是timestamp_hour和de

javascript - 如何使用nodejs获取mongodb的slave状态?

我想使用nodejs获取mongodb服务器的slavestatus。这是代码。varDb=require('mongodb').Db,Server=require('mongodb').Server;vardb=newDb('admin',newServer(conf.host,conf.port));db.open(function(err,db1){varadminDb=db1.admin();adminDb.command({"status":1},function(err,result){console.log("output="+result);});});但我收到错误。e

angularjs - Heroku + MEAN 堆栈错误 : Parameter "url" must be a string, 未定义

我正在关注这个tutorial从Heroku开始构建一个MEANStackContactAPP,我遇到了一些奇怪的错误!虽然我的应用程序在部署后运行良好,但当我在本地运行时,该应用程序无法连接到Mongodb。我得到的错误是:url.js:88thrownewTypeError('Parameter"url"mustbeastring,not'+typeofurl);^TypeError:Parameter"url"mustbeastring,notundefinedatUrl.parse(url.js:88:11)atObject.urlParse[asparse](url.js:8

node.js - nodejs 和 mongodb : how model a geolocation?

我正在开发一个API来存储位置,包括它们的坐标,但我不知道如何为它们建模。我应该和latitude:{type:Float},longitude:{type:Float},或者有没有办法将它们建模为数组,例如[43.95,-26.75]?我想稍后过滤它们的距离。 最佳答案 最近我在做地理定位方面的工作,我想我可以回答你的问题,为时已晚,但这可能对正在寻找解决方案的其他人有所帮助。location:{type:{type:String,default:'Point',},coordinates:[Number],//[22.2475,

ruby-on-rails - 在 Heroku 上从 SQLite3 迁移到 Mongo?

我目前正在将SQLite3与一个简单的帖子和图像共享应用程序一起使用,类似于Rails3Hartl教程(就数据库结构而言)。但我想转移到Mongo以进行future的可扩展性/学习。我也托管在Heroku上,并且使用15GB的共享数据库。我尝试为过渡安装MongoHQ和MongoMapper(按照Heroku的说明),根据Heroku的支持,这部分设置正确。但是,当我关闭共享数据库时,应用程序停止工作,而不是运行Mongo。我不确定接下来要做什么,我是否必须在mongo中重写我的代码,或者mongomapper是否可以解决所有这些问题?如果我更改,我的数据会丢失吗?如果是,我该如何复制

node.js - 使用 mongoose mongodb nodejs 通过索引变量增加数组中的值

我有一个数字数组:readersNum:{type:[Number],default:[]},我想将indexVariable中的值增加1。这行得通:Posts.update({"readerID":readerID},{$inc:{"readersNum.0":1}},{upsert:true,safe:true},function(err){console.log(err);});但问题是我的值不在特定(常量)索引中,它是一个变量。假设索引变量是indexVariable而不是0,我应该如何增加它?我也试过这个:Posts.findOne({"readerID":readerID}

javascript - 在回调中向nodejs express中的 session 添加数据

在下面的代码中,我试图从数据库中获取用户详细信息并将其保存到session中。但不幸的是它没有像我预期的那样工作,数据没有写入session变量。我想这是因为按值(value)传递?任何解决方法exports.check=function(req,res,next){....getUserFromDB(req);}functiongetUserFromDB(req){..db.findOne(query,function(doc){req.session.user=doc;})} 最佳答案 我认为您错过了回调电话。你在使用expre