|
|
|
|
Merb (Mongrel + Erb) は MVC ベースな Ruby の Web フレームワークである。簡単に言うと、軽量な ActionPack クローンである。Rails のテーマが「規約とDRY」ならば、Merbのテーマは「疑わしきものは入れない」であり、Rails の各機能を取り込みつつも、小さくて単純で簡単で軽量、そして高速であることを目指している。
基本的に Rails である。app 以下のディレクトリ構成も殆ど同じなので非常に馴染み深い。
| Rails | Merb | 補足 | |
|---|---|---|---|
| アプリ作成 | rails app1 | merb -g app1 | -g は generate の意 |
| サーバ起動 | script/server start | merb | merb のプロジェクトルートにて実行する |
| クラスタ化 | (別途準備) | merb -p 3000 -c 3 | 3000,3001,3002 で起動 |
| コンソール | script/console | merb -i | |
| ルーティング | config/routes.rb | config/router.rb | |
| サーバ設定 | config/environment.rb | config/merb.yml | ホスト名、ポート、実行モード、HTTP認証、等 |
| 基本設定 | config/environment.rb | config/merb_init.rb | 起動時に実行するRubyコード |
| 依存関係設定 | config/environment.rb | config/dependencies.rb | ロードパス、プラグイン設定 |
| プラグイン | vendor/plugins | deps/plugins | 独自形式(Merb::Plugins)とRails形式の両方をサポート |
| DB管理 | ActiveRecord::Migration | ActiveRecord::Migration | |
| マイグレーション | db/migrate | schema/migrations | |
| テスト方法 | unit | spec | デフォルトのテスト方法 |
| テストディレクトリ | test | test/spec | |
| app以下の違い | - | + mailers, parts | parts は partial や component のようなもの |
(2007/9現在のバージョンは 0.4)
$ sudo gem install mongrel erubis json mime-types archive-tar-minitar rspec activerecord rubigen --include-dependencies $ svn co http://svn.devjavu.com/merb/trunk merb $ cd merb $ rake install |
$ merb -g app1 |
$ cd app1 $ merb |
class Hello < Application
def index
"Hello nksk!"
end
end |
| app/controllers/hello.rb |
Hello nksk! |
| http://localhost:4000/hello |
| JRuby | Rails | Berryz | ℃-ute | エッグ | jQuery |
| 前 | 2007年 9月 |
次 | ||||
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | ||||||