laravel12/routes/web.php
2025-12-06 18:58:09 +09:00

48 lines
1.4 KiB
PHP

<?php
use App\Http\Controllers\LoginController;
use App\Http\Controllers\ProductController;
use App\Http\Middleware\Authenticate;
use Illuminate\Support\Facades\Route;
// ① 기본 URL: 로그인 된 사용자만 접근 가능, 아니면 /login 으로 리다이렉트
Route::get('/', function () {
return view('dashboard'); // resources/views/dashboard.blade.php
})->middleware(Authenticate::class)
->name('dashboard');
// ② 로그인 화면 (누구나 접근 가능)
Route::get('/login', [LoginController::class, 'showLoginForm'])
->name('login');
// ③ 로그인 처리 (POST)
Route::post('/login', [LoginController::class, 'login'])
->name('login.process');
// 로그아웃
Route::post('/logout', [LoginController::class, 'logout'])
->name('logout');
// 상품추가
Route::get('/product/input', [ProductController::class, 'input'])
->name('product.input');
Route::post('/product/input', [ProductController::class, 'store'])
->name('product.store');
// 상품목록
Route::get('/product', [ProductController::class, 'index'])
->name('product');
// 상품삭제
Route::delete('/product/{id}', [ProductController::class, 'destroy'])
->name('product.delete');
// 상품수정 Route Model Binding
Route::get('/product/{product}/edit', [ProductController::class, 'edit'])
->name('product.edit');
Route::put('/product/{product}', [ProductController::class, 'update'])
->name('product.update');