================== 8日目 ルーティング ================== :Author: Shogo Kawahara :Date: 2010-12-08 今日は、URLを正しく定義するためにルーティングを学びましょう。 .. note:: 関連する symfony のドキュメント * `A Gentle Introduction to symfony | 第9章 リンクとルーティングシステム `_ ルーティングとは ================ symfony のドキュメントによると以下のようになっています。 ルーティング (routing) とは URL をユーザーフレンドリーに書き換えるメカニズムです。 [#r1]_ URLを意味を持ったものにするという利点だけでなく、以下のような利点があります。 * リファクタリング時にアクションや内部構造を変えても、同じURLでアクセスできるようにすることが可能。 * デフォルトの ``module/action`` というURLを利用するよりパフォーマンスが向上します。 - ``module/action`` という形式はデフォルトのルーティングですが OpenPNE3 では推奨されていません。詳しくは以下の Note を見てください。 .. note:: デフォルトルーティングの非推奨 OpenPNE3では、ルーティングを定義しないことは非推奨とされています。 開発環境の場合はルーティングを定義しないまま利用すると、ログにエラーが残ります。 .. [#r1] `A Gentle Introduction to symfony | 第9章 - リンクとルーティングシステム `_ ルーティングの定義 ================== プラグインでのルーティングの定義は、アプリケーションごとに行うことができます。 例を示すために、opSamplePlugin に新たなモジュールを追加します。 ``miniDiary`` という名前にします。 :: $ cd $openpne_dir $ php symfony opGenerate:module opSamplePlugin pc_frontend miniDiary アクションを幾つか作成します。 ``$your_plugin_dir/apps/pc_frontend/modules/miniDiary/actions/actions.class.php`` .. code-block:: php 具体的には以下のようになります。 .. code-block:: php-inline IDの指定が必要な時は、以下のように書けます。 .. code-block:: php-inline また明日 ======== 次回は、フォームについて学びます。