Laravel - 控制器


[ 单一控制器 ]

当我们控制器里面只有一个方法的时候,就可以使用 __invoke() 方法来设定成单一控制器

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class ProductionCompanyController extends Controller
{
    //
    public function __invoke()
    {
        return "Toei Tokyo";
    }
}

这个时候路由也不需要填写指向的方法了

Route::get('/productionCompany','ProductionCompanyController');

//页面自然就是返回大名鼎鼎的,Rider系列出版公司----东大妈啦。
//Toei Tokyo

[ 控制器中间件 ]

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class ProductionCompanyController extends Controller
{
    //定义中间件
    public function __construct()
    {
        $this->middleware('log')->only('index');
    }

    public function index()
    {
        return "Production Company";
    }

    public function getName()
    {
        return "Toei Tokyo";
    }
}

?>
这里设定了一个 log 中间件,同时只有访问index才有效果。

[ 资源控制器 ]

资源控制器没有没好说的啦,之前已经演示过了。

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;

class MonsterController extends Controller
{ 
    public function index()
    {
    }

    public function create()
    {
    }

    public function store(Request $request)
    {
    }

    public function show($id)
    {
    }

    public function edit($id)
    {
    }

    public function update(Request $request, $id)
    {
    }

    public function destroy($id)
    {
    }
}

results matching ""

    No results matching ""