by shigemk2

当面は技術的なことしか書かない

大阪Node学園一時限目 LT Expressを使ってみた

@atakig CMSカスタマイズ (自称)webエンジニア
Mac Vim node.jsなどに興味がある
Knock out Rails & Rack

webフレームワーク
sinatra
rails など

Express webフレームワークの一つ

var app = express.createServer();

// app.get....

sinatraと似ている
silexにも似ている

Expressと愉快な仲間たち
Express
Mongoose mongoDB対応のO/Dラッパー
Jade テンプレートエンジン

インストール
nvm
npm
あとはgoogle先生に聞きましょう

フォルダ構成(treeとかを使ってみたら…)

app.js

app.get('/', routes.index);

routes/index.js

modelフォルダを勝手に追加

var Tours = require'('./model/tours').Tours(db);

mongoDBのスキーマを書く

Modelを使ってみる
res.renderを使う

Viewはどうなるのか?
.js内に、trとかtdとかを書き込む

所感

  • フレームワークとしての規約は緩やか
  • 関数リテラルと関数内に閉じたscope
  • app.jsとroutesとmodelの棲み分け
  • 英語ドキュメントとつきあう覚悟
  • node.jsそのもののお勉強
  • mongooDBのArrayの更新

特にhello world以上の結果を出したいときは、
どうしても英語のドキュメントに行きつく必要がある。

modelのネスト
情報の追加と削除は出来るが、更新は出来ない

node.jsで動く他のフレームワークについて
Node.jsでつくるGood Old Web App