【问题标题】:Using Cloud9 IDE - trying to connect to my mongodb使用 Cloud9 IDE - 尝试连接到我的 mongodb
【发布时间】:2015-07-31 16:09:09
【问题描述】:

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

我有一个名为 data 的文件夹,里面有我的 mongodb 数据库。

在我的 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查一下jade文件,我查了,好像还可以。

我认为这是我的服务器配置,但我太愚蠢/太新了,无法弄清楚。我试着改成 var db = monk('process.env.IP:28017/nodetest1'); 仍然遇到同样的问题。

编辑

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

db.serverCmdLineOpts()

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

【问题讨论】:

    标签: javascript mongodb express cloud9-ide monk


    【解决方案1】:

    对于以后的搜索,

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

    这就是连接数据库所必需的吗?

    【讨论】:

    • var db = monk(process.env.IP+':'+process.env.PORT+'/nodetest1');
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-07
    • 2018-11-11
    • 2020-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多