2

M は Cloud 9 IDE を使用しています。私はこのガイドに従って学んでいます: http://cwbuecheler.com/web/tutorials/2013/node-express-mongo/

mongodb db がある data というフォルダーがあります。

私の app.js には、次のコードがあります。

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

ガイドに従ってdbを作成し、それに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)

誰が私が間違っているのか知っていますか? ガイドの作成者から、jade ファイルの github を確認するように依頼されました。確認したところ、問題ないようです。

私は自分のサーバー構成を考えていますが、私はあまりにも愚かで/新しいのでそれを理解できません。に変更しようとしましたが var db = monk('process.env.IP:28017/nodetest1');、それでも同じ問題が発生します。

編集

それを修正することができました。まず、mongo コンソールで以下を実行します。

db.serverCmdLineOpts()

これにより、IP とポートが表示されます。C9 では、app.js または同等のもので 0.0.0.0:27017 を使用する必要があります。

4

1 に答える 1