2015年7月17日金曜日

【cakePHP】/プレフィックス/クラス/メソッド ルーティングプレフィックスの話



コントローラーのメソッドに、アンダーバーを持ったプレフィックスを設定して、変則的なURLを生成する技がある。

class TestsController extends AppController{
    public function prefix_index(){
    }//function
}//class

こういうクラスがあるとき、

/tests/prefix_index
というのが本来のURL

これに、ルーティングプレフィックスという設定を組み合わせる。
参考:
https://24nwakahana.wordpress.com/2013/02/13/cakephp-2-0-routing-prefixes-%E3%82%92%E4%BD%BF%E3%81%86%E3%80%82%E3%81%9D%E3%81%97%E3%81%A6%E4%BD%BF%E3%81%86%E3%81%AE%E3%82%92%E6%AD%A2%E3%82%81%E3%82%8B%E3%80%82/

Configure::write('Routing.prefixes', array('prefix'));

このコンフィグは、/app/Config/core.php に書かないといけないらしい。

この設定を有効にすると、上記メソッドによるURLは以下の形になる。

/prefix/tests/index

注意しなくてはならないのは、

/クラス/プレフィックス/メソッド
というURLにはならず、

/プレフィックス/クラス/メソッド
というURLになること。

prefix_index()

prefix/index
とはならないので注意。

0 件のコメント:

コメントを投稿