跳转到主要内容
约 2 分钟阅读

控制器 (Controllers)

控制器负责将相关的请求处理逻辑组织成一个类。控制器通常保存在 app/Http/Controllers 目录下。

快速生成控制器

# 生成基础控制器
php artisan make:controller UserController

# 生成包含 CRUD 方法的 RESTful 资源控制器
php artisan make:controller PostController --resource --model=Post

编写控制器逻辑

namespace App\Http\Controllers;

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

class UserController extends Controller
{
    /**
     * 显示所有用户列表
     */
    public function index(): JsonResponse
    {
        $users = User::paginate(15);
        return response()->json($users);
    }

    /**
     * 保存新创建的用户
     */
    public function store(Request $request): JsonResponse
    {
        $validated = $request->validate([
            'name'  => 'required|string|max:255',
            'email' => 'required|email|unique:users',
        ]);

        $user = User::create($validated);

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