[Laravel]REST API CRUDの作り方

Laravel Laravel

この記事はLaravel 10.xでREST APIのCRUDを作る手順を紹介します。

1. Laravelのプロジェクトを作成

以下の手順でプロジェクトを作成しよう。

Laravelの認証パッケージをインストール

composer require laravel/passport
Bash

passportの設定

php artisan passport:install
Bash

Modelを作成

php artisan make:model User -m
Bash

Controllerの作成

php artisan make:controller Api/UserController --api
Bash

Routesに追加

routes/api.php
Route::get('users', [Api\UserController::class, 'index']);
Route::post('users', [Api\UserController::class, 'store']);
Route::get('users/{user}', [Api\UserController::class, 'show']);
Route::put('users/{user}', [Api\UserController::class, 'update']);
Route::delete('users/{user}', [Api\UserController::class, 'destroy']);
PHP

Controllerのメソッドを実装

Api\UsersControllerクラスに以下を実装

UserController.php
// 一覧
public function index()
{
    return User::all();
}

//.作成
public function store(Request $request)
{
    $user = User::create($request->all());

    return response()->json($user, 201);
}

// 詳細
public function show(User $user)
{
    return response()->json($user);
}

// 更新
public function update(Request $request, User $user)
{
    $user->update($request->all());

    return response()->json($user);
}

// 削除
public function destroy(User $user)
{
    $user->delete();

    return response()->json(null, 204);
}
PHP

完成

以下を実行してサーバーを実行します。

php artisan serve
Bash

各エンドポイントをPostmanなどでアクセスしてあげると、JSONが返されると思います。

passportの詳しい設定や使い方は別の記事で紹介したいと思います。

Follow me!

コメント

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