mongodb(mongolab)在heroku上。 'LoopBack连接器“mongodb”未安装'

问题描述:

我有一个本地运行良好的nodejs应用程序。它使用mongodb。我想把它推到heroku,所以我安装了mongolab插件,'heroku插件:打开mongolab' 并更新了datasources.json文件,就像这样;mongodb(mongolab)在heroku上。 'LoopBack连接器“mongodb”未安装'

{ 
    "db": { 
    "name": "db", 
    "url": "mongodb://<user:<pwd>@ds037252.mongolab.com:37252/heroku_app37281512", 
    "connector": "mongodb" 
    } 
} 

当我将它推到heroku上时,启动时出现以下故障;

2015-05-29T04:25:39.953257 + 00:00的Heroku [web.2]:用命令启动过程node tk/server/server.js 2015-05-29T04:25:41.167153 + 00:00应用程式[web.2] :检测到512 MB可用内存,每个进程512 MB限制(WEB_MEMORY)2015-05-29T04:25:41.167177 + 00:00 app [web.2]:推荐WEB_CONCURRENCY = 1 2015-05-29T04:25:42.158058 + 00 :00 app [web.2]:2015-05-29T04:25:42.158064 + 00:00 app [web.2]:2015-05-29T04:25:42.158063 + 00:00 app [web.2]:WARNING :LoopBack连接器“mongodb”未安装为以下任何模块:2015-05-29T04:25:42.158066 + 00:00 app [web.2]:./connectors/mongodb 2015-05-29T04:25:42.158068 +00:00 app [web.2]:loopback-connector-mongodb 2015-05-29T04:25:42.158069 + 00:00 app [web.2]:2015-05-29T04:25:42.158072 + 00:00 app [web.2]:2015-05-29T04:25:42.158070 + 00:00 app [web.2]:修复,运行:2015-05-29T04 :25:42.158073 + 00:00 app [web.2]:npm install loopback-connector-mongodb

我该如何处理?我需要修改datasources.json吗?
我在一个heroku免费计划。也许它不包括mongodb访问?

在此先感谢,瑞安

这里是的package.json;

{ 
    "name": "tk", 
    "version": "1.0.0", 
    "main": "server/server.js", 
    "scripts": { 
    "pretest": "jshint ." 
    }, 
    "dependencies": { 
    "compression": "^1.0.3", 
    "cors": "^2.5.2", 
    "errorhandler": "^1.1.1", 
    "loopback": "^2.14.0", 
    "loopback-boot": "^2.6.5", 
    "loopback-datasource-juggler": "^2.19.0", 
    "serve-favicon": "^2.0.1" 
    }, 
    "optionalDependencies": { 
    "loopback-explorer": "^1.1.0" 
    }, 
    "devDependencies": { 
    "jshint": "^2.5.6" 
    }, 
    "repository": { 
    "type": "", 
    "url": "" 
    }, 
    "description": "tk" 
} 
+0

请问您可以发布您的package.json吗? – Alex

+0

嗨,亚历克斯,我编辑了我的帖子,包括package.json。谢谢。 – nodeNewbie

你错过了从依赖关系loopback-connector-mongodb

您的package.json更改为(删除我的评论,如果复制/粘贴!)

{ 
    "name": "tk", 
    "version": "1.0.0", 
    "main": "server/server.js", 
    "scripts": { 
    "pretest": "jshint ." 
    }, 
    "dependencies": { 
    "compression": "^1.0.3", 
    "cors": "^2.5.2", 
    "errorhandler": "^1.1.1", 
    "loopback": "^2.14.0", 
    "loopback-boot": "^2.6.5", 
    "loopback-datasource-juggler": "^2.19.0", 
    "loopback-connector-mongodb": "1.9.1", --note the addition of this line 
    "serve-favicon": "^2.0.1" 
    }, 
    "optionalDependencies": { 
    "loopback-explorer": "^1.1.0" 
    }, 
    "devDependencies": { 
    "jshint": "^2.5.6" 
    }, 
    "repository": { 
    "type": "", 
    "url": "" 
    }, 
    "description": "tk" 
} 

注意 - 您还可以使用npm install loopback-connector-mongodb --save - 将在本地安装软件包,并将依赖关系保存到您的package.json