Belial
philo****@gmail*****
2009年 12月 8日 (火) 18:04:57 JST
はじめまして、柴田と申します。 コントローラについて悩んでおり、良い方法があれば教えて頂ければと思い投稿しました。 説明が下手で申し訳無いのですが、現在管理画面を作成しており、一部機能のコントローラを サブディレクトリに配置したいと考えています。 例えば、以下のようにコントローラを配置し controller/ -admin.php + admin/ -user.php 管理画面のURLが http://example.com/admin で、admin.php というコントローラが起動しメニューの表示などを行い、 ユーザの追加処理は http://example.com/admin/user/insert で、adminフォルダにあるuser.php というコントローラを起動したいのですが、CIで普通に http://example.com/admin/user/insertにアクセスすると、 admin.phpのuserメソッドが実行されます。 adminフォルダを別の名前にし、ルーティングを行うしか方法を考えたのですが、 URLとディレクトリ構成が一致している方が望ましいため、上記の形で出来る方法を さがしております。 一応無理矢理な方法として、以下のようなメソッドをadmin.phpに追加してみましたが、 良い方法とは思えません。 function user($arg = "",$arg2=""){ include(APPPATH.'controllers/admin/user.php'); $user = new User(); if(method_exists($user,$arg)){ $user->$arg($arg2); } else{ $user->index(); } } 宜しければお知恵をお貸し下さい。 よろしくお願いします。