sails.js とは?
Node.js でできたフルスタックのウェブアプリケーションフレームワークで以下の特徴があるよ
- Ruby の rails みたいな感じ
- URLのパスからの自動マッピングでコントローラー実行、モデル操作などでコード量を軽減
- WebSocketを使ったリアルタイム処理(pub/sub)も特に意識せず開発できる
とりあえず、node.js + npmの環境があるなら npm install sails -g
みたいな感じでインストール!
サンプルアプリケーション作成
ワンコマンド sails new waai_project
で一発でサンプルアプリケーション作成できるよ、作成後 npm install
を忘れずにね
アプリケーションの起動
帆を上げよ!YooHoo!パイレーツ・オブ・カリビアーンな感じで!
sails lift
でアプリケーションが起動するよ。sales
じゃないからコマンドの打ち間違いには注意ね http://localhost:1337
で確認
sails.js 公式ドキュメントがオフラインで読めるからダウンロードしよう
sails-docsがgithub.comからチェックアウトできるよ。オフラインでもドキュメント確認できて便利。
対話的なCLIを使って動作確認
**アプリケーションを都度都度起動するのは面倒だよ。各モジュールの動作を確認したりするなら対話的なCLIが使える。**これを使いこなすとsails.jsの仕組みの理解が一気に進みやすいよ
grunt については知っておいた方がいいよ
アプリケーション起動時にsails.jsはgruntを実行するので、ちょっとおさえておいた方がいいよ。
テストはmocha使う感じで
他のテストフレームワークでもいいけど、公式はmochaを推奨
各種設定や、開発環境・本番環境の切り替えは config ディレクトリの中が重要な役割
config 内のことはざっとドキュメントの目を通すと良いよ。公式ドキュメントの Anatomy のセクションは超参考になるよ。
必読
- DBコネクション設定関係 connections.js
- ロギング設定関係 log.js
少したったら読む
- ルーティング関係 routes.js
- ポリシー関係 policies.js
- ビュー関係 views.js
ORMのwaterlineの応用に進もう
少し複雑なものをつくるなら、ORMのwaterlineを理解しておこう。
- DBのテーブルリレーション:1対1、多対多、1対多、などなど
- connection, adapter 等、複数のデータソース(RDM、KVSの混在環境)の設定方法など
参考資料
- 公式:
- コミュニティ:
- http://nantokaworks.com/p1320/