忍者ブログ

エンジニア初心者の備忘録

エンジニア初心者が躓いたことハマったことを公開します!

【削除】RESTfulなルーティングについて~Laravelのルーティング~

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

ただいまコメントを受けつけておりません。

【削除】RESTfulなルーティングについて~Laravelのルーティング~

前回書いた、下記ブログですが、全体的に間違っていたので、削除します。
訂正のブログは、こちら(『暗黙的なコントローラーによるコントローラールーティング~Laravelのルーティング~』)です。







今回は、Laravelのルーティングの方法の一つであるRESTfulなルーティングについて書き留めておきます!

まず、「RESTful」とは何か?
これは、REST(Representational State Transfer)原則に従うことをRESTfulといいます。
それでは、REST(Representational State Transfer)原則とは何かというと、下記サイト等を参照しましたが、プログラム超初心者に十分理解できません、、、

『wiki/REST』
『コントローラをRESTfulにする』

今の理解でまとめると次のようになります。

REST(Representational State Transfer)原則とは、HTTPリクエストのメソッド(GET, POST, PUT, DELETE等)とURIの組み合わせで機能を実現する設計思想。




それでは、RESTfulなルーティングについて、

このルーティング方法は、2つの側面から見ていくと理解しやすくなると思います。

●ルーティングの定義の側面:「Route::controllerメソッド」を使用する。
●対応するコントローラーの側面:「暗黙的なコントローラー」を使用する。

これで、1つのルートの定義だけで、ある特定のコントローラーの全アクションを処理することができます!!

それでは、2つの側面について、個別にみていきます。

●ルーティングの定義の側面:「Route::controllerメソッド」を使用する。
記述方法は下記の通りとなります。

Route::controller('パス名', '呼び出すコントローラーのクラス名');

例:Route::controller('/system/division', 'DivisionController');

なお、第一引数のパス名は、コントローラーが処理するベースのURLとなります。


●対応するコントローラーの側面:「暗黙的なコントローラー」を使用する。
記述方法は下記の通りとなります。

class DivisionController extends BaseController {
 // getで/system/division」にアクセスした場合
    public function getIndex()
    {
        echo 'インデックス';
    }

 // postで/system/division/name」にアクセスした場合
    public function postName()
    {
        echo '部署名';
    }
}


それぞれのコントローラーアクションの命名はHTTPメソッド名(GET, POST, PUT, PATCH, DELETE, any等)をプレフィックス(接頭辞)に使用します。

以上、「Route::controllerメソッド」「暗黙的なコントローラー」の使用で、アクセスするHTTPメソッドに応じて、1つのルーティングの定義で複数のルーティングを可能にするのがRESTfulなルーティングです!


以上です!







【参考サイト】
『Laravel 4.2.0 コントローラー』
『Laravel5でシンプルなCRUDアプリを開発する』
『Laravelのルーティング書き方まとめ』
『最新鋭のPHPフレームワーク「Laravel4」でWeb開発 | (2)ルーティング編』


PR

コメント

プロフィール

HN:
プラムザ 太郎
性別:
非公開

P R