使用Cloud9 IDE - 尝试连接到我的mongodb

时间:2015-07-31 16:09:09

标签: javascript mongodb express cloud9-ide monk

M使用Cloud 9 IDE。我正在按照本指南学习:http://cwbuecheler.com/web/tutorials/2013/node-express-mongo/

我有一个名为data的文件夹,它有我的mongodb db。

在我的app.js中,我有以下代码:

var mongo = require('mongodb');
var monk = require('monk');
var db = monk('process.env.IP:process.env.port/nodetest1');

我想知道这是否正确,因为按照指南我创建了一个数据库,添加了3个元素,创建了一个Jade文件,将其添加到我的路由中。

但是,我的服务器中出现500代码错误,当我导航到/ userlist页面时也是如此:

/home/ubuntu/workspace/near-me/views/userlist.jade:7 5| User List 6| ul > 7| each user, i in userlist 8| li 9| a(href="mailto:#{user.email}")= user.username Cannot read property 'length' of undefined

TypeError: /home/ubuntu/workspace/near-me/views/userlist.jade:7
5| User List
6| ul
> 7| each user, i in userlist
8| li
9| a(href="mailto:#{user.email}")= user.username

Cannot read property 'length' of undefined
at eval (eval at <anonymous> (/home/ubuntu/workspace/near-me/node_modules/jade/lib/index.js:218:8), <anonymous>:50:31)
at eval (eval at <anonymous> (/home/ubuntu/workspace/near-me/node_modules/jade/lib/index.js:218:8), <anonymous>:93:4)
at eval (eval at <anonymous> (/home/ubuntu/workspace/near-me/node_modules/jade/lib/index.js:218:8), <anonymous>:106:22)
at res (/home/ubuntu/workspace/near-me/node_modules/jade/lib/index.js:219:38)
at Object.exports.renderFile (/home/ubuntu/workspace/near-me/node_modules/jade/lib/index.js:380:38)
at Object.exports.renderFile (/home/ubuntu/workspace/near-me/node_modules/jade/lib/index.js:370:21)
at View.exports.__express [as engine] (/home/ubuntu/workspace/near-me/node_modules/jade/lib/index.js:417:11)
at View.render (/home/ubuntu/workspace/near-me/node_modules/express/lib/view.js:126:8)
at tryRender (/home/ubuntu/workspace/near-me/node_modules/express/lib/application.js:639:10)
at EventEmitter.render (/home/ubuntu/workspace/near-me/node_modules/express/lib/application.js:591:3)

任何人都知道我做错了什么?该指南的作者让我检查github的玉器文件,我做了,看起来没问题。

我正在考虑我的服务器配置,但我太愚蠢/不清楚了解它。我试过换到 var db = monk('process.env.IP:28017/nodetest1');仍然会遇到同样的问题。

修改

管理修复它。首先,在mongo控制台中运行以下命令:

db.serverCmdLineOpts()

这将显示IP和端口。在C9中,您必须在app.js或同等版本中使用0.0.0.0:27017。

1 个答案:

答案 0 :(得分:1)

将来的搜索,

var db = monk('localhost:27017/dbname');

是否只需连接数据库即可。