【Laravel】artisanのmake:controllerコマンドを解説

Laravel

Laravel 10.xのartisanの「make:controller」コマンドを解説します。

Description

新しいコントローラクラスの作成

Usage

php artisan make:controller [--api] [--type TYPE] [--force] [-i|--invokable] [-m|--model [MODEL]] [-p|--parent [PARENT]] [-r|--resource] [-R|--requests] [-s|--singleton] [--creatable] [--test] [--pest] [--] <name>

Arguments

引数必須説明
name必須コントローラー名

Options

オプション省略形必須説明
api--コントローラからcreateメソッドとeditメソッドを除外する
type-必須使用するコントローラのスタブファイルを手動で指定します。
force--コントローラーが既に存在する場合でも、クラスを作成する
invokable--単一メソッドで起動可能なControllerクラスを生成する。
model--与えられたモデルのリソースコントローラを生成する
parent--ネストしたリソースコントローラクラスを生成する
resource--リソースコントローラクラスを生成する
requests--ストアとアップデートのためのFormRequestクラスを生成する。
singleton--シングルトンリソースコントローラクラスを生成する
creatable--シングルトンリソースが作成可能であることを示す。
test--Controllerに付随するPHPUnitのテストを生成します。
pest--Controllerに付随するPestテストを生成する。

Examples

no options

空のコントローラを作成します。

php artisan make:controller FooController
   INFO  Controller [app/Http/Controllers/FooController.php] created successfully.  
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class FooController extends Controller
{
    //
}

api

php artisan make:controller --api FooController
   INFO  Controller [app/Http/Controllers/FooController.php] created successfully.  
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class FooController extends Controller
{
    /**
     * Display a listing of the resource.
     */
    public function index()
    {
        //
    }

    /**
     * Store a newly created resource in storage.
     */
    public function store(Request $request)
    {
        //
    }

    /**
     * Display the specified resource.
     */
    public function show(string $id)
    {
        //
    }

    /**
     * Update the specified resource in storage.
     */
    public function update(Request $request, string $id)
    {
        //
    }

    /**
     * Remove the specified resource from storage.
     */
    public function destroy(string $id)
    {
        //
    }
}

invokable

php artisan make:controller --invokable FooController
   INFO  Controller [app/Http/Controllers/FooController.php] created successfully.  
<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class FooController extends Controller
{
    /**
     * Handle the incoming request.
     */
    public function __invoke(Request $request)
    {
        //
    }
}

model

php artisan make:controller --model=User FooController
   INFO  Controller [app/Http/Controllers/FooController.php] created successfully.  
<?php

namespace App\Http\Controllers;

use App\Models\User;
use Illuminate\Http\Request;

class FooController extends Controller
{
    /**
     * Display a listing of the resource.
     */
    public function index()
    {
        //
    }

    /**
     * Show the form for creating a new resource.
     */
    public function create()
    {
        //
    }

    /**
     * Store a newly created resource in storage.
     */
    public function store(Request $request)
    {
        //
    }

    /**
     * Display the specified resource.
     */
    public function show(User $user)
    {
        //
    }

    /**
     * Show the form for editing the specified resource.
     */
    public function edit(User $user)
    {
        //
    }

    /**
     * Update the specified resource in storage.
     */
    public function update(Request $request, User $user)
    {
        //
    }

    /**
     * Remove the specified resource from storage.
     */
    public function destroy(User $user)
    {
        //
    }
}

Follow me!

コメント

PAGE TOP
タイトルとURLをコピーしました