Laravelではドキュメントにもあるように、以下のようなコントローラの設定が可能です。
LaravelではRESTフルな命名規則を使ったコントローラのアクションへのルートを定義一つだけで簡単に行えます。
http://laravel4.kore1server.com/docs/controllers#restful-controllers
つまり
○routes.php
Route::controller('users', 'UserController');
○UserController.php
class UserController extends BaseController { public function getIndex() { // } public function getProfile() { // } }
の設定がされていた場合、
http://ドメイン名/users にアクセスすると、
→getIndexメソッド内の処理が実行される。
http://ドメイン名/users/profile
→getProfileメソッド内の処理が実行される。
という形になります。
で、またまた「ドキュメントちゃんと読め事件」が発生するのですが、
メソッドをキャメルケースで指定したい・・・
たとえば、 getProfileEdit とか postAddProfileImg とか。
その場合、どういうURIでアクセスすればよいのかー??わからん。。
と悩むこと小一時間。。答えはドキュメントにありました 笑
もしコントローラアクションを複数の単語で命名するのでしたら、「ダッシュ」で分離したURIでアクセスできます。例えば下のコントローラーアクション、UserControllerは、users/admin-profileというURIに対応します。
要するに、
http://ドメイン名/users/admin-profile
→getAdminProfileメソッド内の処理が実行される。
ということです。
ポイントは「ダッシュ(-)」で単語をつなげるということですね。
ノット「アンダーバー(_)」!