メニュー

Laravelのコントローラーとは

コントローラーとは

コントローラはリクエストされたURIやフォームの入力値にしたがい、何かしらの処理を行う。

Laravelにおけるコントローラは、「app」フォルダ内の「Http」内にある「Controllers」フォルダ内に配置する。

 

コントローラーへのルーティング

/routes/web.php に以下のように記載する。

Route::get('/test', 'TestController@func');

上記の例では /test のURLがリクエストされると TestControllerクラスのfuncメソッドが実行される。(get通信限定)

 

コントローラーの実装

以下の例を参照してください。

namespace App\Http\Controllers;

use App\Repositories\TestRepository;
use Carbon\Carbon;
use DB;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Log;
use Validator;

 

class TestController extends Controller
{
    protected $testRepository;
    
    /*
     * コンストラクタ
     */
    public function
__construct(
            TestRepository $testRepository
            ){
        $this->testRepository = $testRepository;
    }
    
    public function func(){
        
        $items = $this->testRepository->getItems();
                
        return
view('index'
            , [
                'items' => $items,
            ]);
    }

}

コントローラークラスはデフォルトで用意されているControllerクラスを継承しましょう。

__constructはコンストラクタです。初期処理を行います。

上記の例ではDBアクセスを担うTestRepositoryをインスタンス化しています。

呼び出されたfuncメソッド内ではリポジトリを通じてDBからデータを取得します。

最後にreturnの後にビュー名を指定します。今回はindexというビューを指定します。

また、ビューにパラメータとしてitemsを渡しています。

 


子記事一覧
子記事はありません

同階層の記事一覧
  1. インストール方法
  2. クイックスタート & チュートリアル(初心者向け)
  3. クイックスタート & チュートリアル(中級者向け)
  4. ルーティング
  5. ビュー/レイアウト
  6. Bladeテンプレート
  7. コントローラー
  8. マイグレーションとテーブル定義
  9. Eloquentモデル (ORM)
  10. データベース
  11. SQL
  12. バリデーション
  13. .envファイルの設定値へのアクセス
  14. 動作環境による分岐処理
  15. configフォルダ配下の設定値へのアクセス
  16. assetヘルパーを利用したpublicフォルダへのアクセス
  17. storageフォルダへのアクセス
  18. アプリケーション名の変更
  19. メンテナンス
  20. ログイン画面(認証システム)の作成
  21. ログインユーザー情報の取得
  22. ルートの認証化
  23. 本番サーバーへのデプロイ方法
  24. 多言語化
  25. csrf_field
  26. ファイルのダウンロード
  27. CSVのアップロードおよび読み込み(maatwebsite/excel)
  28. ページタイトルの設定
  29. コマンド一覧
  30. エラー一覧
  31. SQLの実行ログ出力方法
  32. キャッシュのクリア
  33. Selectの結果の最初もしくは最後に任意の値を追加する方法
  34. コントローラー内で他のコントローラーを呼び出す方法
  35. ajaxでPOST通信する際の注意点
  36. ソーシャルログインの実装
  37. セッション情報の確認
  38. ログイン、ユーザー登録、パスワードリセット後のリダイレクト先の変更方法
  39. redirectやreturn viewにメッセージを付与する方法
  40. クッキー(cookie)の設定と取得


▼ 詳細情報 ▼
▼ 過去バージョン ▼



最近コメントのあった記事

コメント一覧


コメントがありません