2011/05/28(Sat)
7分半で作るNode.js+MongoDBアプリ
プログラム, Node, MongoDB, NiftyCloud | |
![]()
先日のJJUG SpringのLTをしてきた「7分半で作るNode.js+MongoDBアプリ」の動画を撮り直しました。
本番ではmongoose.Schemaのところをmongoose.modelとしてしまい、まさかのライブデバッグを初めるハメになり、結果として13分となってしまいました。
リベンジとして今日何回かトライしたところ10分を2分半も上回る7分半、スリークォーターの記録を出すことができました。
動画中でやってること
$ git clone git://github.com/creationix/nvm.git ~/.nvm
- 4 nvmを環境に読み込む
$ . ~/.nvm/nvm.sh
- 5 nvmでv0.4.8をインストール(最近のやつだとnpmも自動でインストール)
$ nvm install v0.4.8
$ ./mongodb-linux-x86_64-1.8.1/bin/mongod --dbpath=/home/muddydixon/mongodb/db/ --logpath=/home/muddydixon/mongodb/log/mongod.log --fork
- 10 nvmのインストールがまだ終わってないので、先行してコードを書き始める
var mongoose = require('mongoose'); mongoose.connect('mongodb://localhost/sbm'); var Bookmark = new mongoose.Schema({title: String, url: String}); mongoose.model('Bookmark', Bookmark); Bookmark = mongoose.model('Bookmark'); app.post('/', function(req, res)[ if(req.body.url){ // 最悪でもurlぐらいはチェックする new Bookmark({title: req.body.title || req.body.url, url: req.body.url}).save(function(err){ res.redirect('/'); // 保存したら/ にリダイレクト }); } });
- 11 nvmが終わっているのでnpmでexpress, jade, mongooseをインストール(グローバルでインストールして、リンクを貼る)
$ npm install express jade mongoose -g $ npm link express jade mongoose
- 12 expressでsbmを作成
$ express sbm && cd sbm
- 13 app.jsを編集
- さっきの先行コードを適宜コピー
- app.getを変更
app.get('/', function(req, res){ Bookmark.find({}, function(err, bms){ res.render('index', { bms: bms, title: 'Express' }); }); });
- 14 view/index.jadeを編集
div
ul
- bms.forEach(function(bm){
li
a(href= bm.url)= bm.title
- })
form(action='/', method= 'POST')
input(name= 'title')
input(name= 'url')
input(type= 'submit')
- 15 app.jsを起動
$ node.app
あ、今回の実験ではニフティクラウドをお借りしました。モニターバンザイ!
コメント
トラックバック - http://d.hatena.ne.jp/muddydixon/20110528/1306584552
- Twitter / @muddydixon
- Twitter / @doryokujin
- Twitter / @KOBA789
- Twitter / @midoisan
- Twitter / @understeer
- Twitter / @xuwei_k
- Twitter / @uk_oasis
- Twitter / @hakobera
- Twitter / @Hayato_Kapibara
- Twitter / @Jxck_
- Twitter / @koichik
- Twitter / @relax_more
- Twitter / @hituji69
- 大人になったら肺呼吸 - 2011年 node.jsに関する記事のブクマ数ラン...
リンク元
- 1174 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&sqi=2&ved=0CC0QFjAA&url=http://d.hatena.ne.jp/muddydixon/20110528/1306584552&ei=rqciT7mSHLGQiAeWo53bBA&usg=AFQjCNGU6MssyoiB2ljk2A6EeutNU1bBJA
- 506 http://www.google.co.jp/url?sa=t&rct=j&q=node.js mongodb&source=web&cd=2&ved=0CCYQFjAB&url=http://d.hatena.ne.jp/muddydixon/20110528/1306584552&ei=yQiFTu2_Cq_ImAWVuun0Dw&usg=AFQjCNGU6MssyoiB2ljk2A6EeutNU1bBJA
- 380 http://reader.livedoor.com/reader/
- 346 http://longurl.org
- 335 http://b.hatena.ne.jp/hotentry
- 278 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cts=1331035958642&ved=0CD8QFjAB&url=http://d.hatena.ne.jp/muddydixon/20110528/1306584552&ei=MP9VT_rQNurymAWdnNCFCg&usg=AFQjCNGU6MssyoiB2ljk2A6EeutNU1bBJA&sig2=sSvXPK2nq8y-UVZKRah
- 265 http://bit.ly/meuWAx
- 260 http://twitter.com/
- 254 http://b.hatena.ne.jp/hotentry/it
- 245 https://www.google.co.jp/

![ディレクターズ・カット 燃えよドラゴン 特別版 [DVD] ディレクターズ・カット 燃えよドラゴン 特別版 [DVD]](http://ecx.images-amazon.com/images/I/516Qu4QezsL._SL75_.jpg)
![クレイジー / ビューティフル [DVD] クレイジー / ビューティフル [DVD]](http://ecx.images-amazon.com/images/I/512DhkGdmkL._SL75_.jpg)


![ノッキン・オン・ヘブンズ・ドア [DVD] ノッキン・オン・ヘブンズ・ドア [DVD]](http://ecx.images-amazon.com/images/I/51ZW9WZWQML._SL75_.jpg)
![死ぬまでにしたい10のこと [DVD] 死ぬまでにしたい10のこと [DVD]](http://ecx.images-amazon.com/images/I/51FK1TYGR6L._SL75_.jpg)
![しゃべれども しゃべれども 特別版 (初回限定生産2枚組) [DVD] しゃべれども しゃべれども 特別版 (初回限定生産2枚組) [DVD]](http://ecx.images-amazon.com/images/I/516XBsu8qNL._SL75_.jpg)






![フロム・ダスク・ティル・ドーン [DVD] フロム・ダスク・ティル・ドーン [DVD]](http://ecx.images-amazon.com/images/I/51P3p3fXmAL._SL75_.jpg)
![時計じかけのオレンジ [DVD] 時計じかけのオレンジ [DVD]](http://ecx.images-amazon.com/images/I/41YCYFD91SL._SL75_.jpg)






