ソースコードから理解する技術-UnderSourceCode

手を動かす(プログラムを組む)ことで技術を理解するブログ

「Ruby on Rails 3 アプリケーションプログラミング」 - 7章 ルーティングを読んで

Ruby on Rails 3 アプリケーションプログラミングの7章「ルーティング」を読んだ時のメモを挙げておきます。

気になった所のみ挙げているので、ここに載せていないメソッドや、詳細な使い方については
本書を参照してください。

Railsのルーティングについて
RailsではRESTfulになるよう実装するのが基本。

◆ルートの定義ファイル
・ルートの定義は、routes.rbに記述する。

◆resourcesメソッド
・「resources リソース名」と記述するだけで、基本的なCRUDのルートは定義される。

◆resourceメソッド
・アプリケーション定義ファイルなど、「唯一」のルートを定義したい場合は「resource リソース名」と記述する。

◆constraintsオプション
・ルートに渡すパラメータに制約を加えるには「constraints」オプションを使用する。

◆controllers、asオプション
・コントローラ名、アクション名を独自に定義したい場合は「controllers、as」オプションを使用する。

◆collection、memberブロック
・独自のアクションを用意する場合「collection、member」ブロックを使用する。
・複数のオブジェクトを扱う場合にはcollectionを使用。→生成されるルートに、idが含まれない。
・単一のオブジェクトを扱う場合にはmemberを使用。→生成されるルートに、idが含まれる。

◆matchメソッド
・独自のルートを定義する場合には、「match」メソッドを使用する。

◆rootメソッド
・ルートとなるURLを定義するのに使用。
・routes.rbの末尾に書くのが基本。

◆ルートの記載の順序について
・ルートの優先順位は、routes.rbに記述した順番そのものとなる。
・なので汎用的な定義は、できるだけ後に記述した方がいい。

ルーティングについては、実際に開発しながら使い方を理解していくのが
早そうです・・・。