본문 바로가기

php 헛다리/Laravel9 헛다리

라라벨9 route 설정

728x90

 

라라벨9 route 설정

 

 

라우터 - 경로설정 파일

web 사용시

/routes/web.php

api 사용시

/routes/api.php

예시

// web.php  경로설정

use App\Http\Controllers\MemoDefaultController; // 컨트롤러 등록 필수
Route::get('/memo', [MemoDefaultController::class, 'index'])->name('memo.index');
Route::get('/memo_list', [MemoDefaultController::class, 'memo_list'])->name('memo.memo_list');
Route::get('/memo_insert_form', [MemoDefaultController::class, 'memo_insert_form'])->name('memo.memo_insert_form');
Route::post('/dbproc_memo_insert', [MemoDefaultController::class, 'dbproc_memo_insert'])->name('memo.dbproc_memo_insert');
Route::get('/memo_view', [MemoDefaultController::class, 'memo_view'])->name('memo.memo_view');
Route::get('/memo_update_form', [MemoDefaultController::class, 'memo_update_form'])->name('memo.memo_update_form');
Route::post('/dbproc_memo_update', [MemoDefaultController::class, 'dbproc_memo_update'])->name('memo.dbproc_memo_update');
Route::post('/dbproc_memo_delete', [MemoDefaultController::class, 'dbproc_memo_delete'])->name('memo.dbproc_memo_delete');



// 그룹 사용시

use App\Http\Controllers\Admin_default; // 컨트롤러 등록 필수
Route::prefix('/admin_default')->group(function (){
    Route::get('/', [Admin_default::class,'index'])->name('admin_default.index');
    Route::get('/admin_list', [Admin_default::class,'admin_list'])->name('admin_default.admin_list');
    Route::get('/admin_createForm', [Admin_default::class,'admin_createForm'])->name('admin_default.admin_createForm');
    Route::post('/dbproc_admin_create', [Admin_default::class,'dbproc_admin_create'])->name('admin_default.dbproc_admin_create');
    Route::get('/admin_read', [Admin_default::class,'admin_read'])->name('admin_default.admin_read');
    Route::get('/admin_updateForm', [Admin_default::class,'admin_updateForm'])->name('admin_default.admin_updateForm');
    Route::post('/dbproc_admin_update', [Admin_default::class,'dbproc_admin_update'])->name('admin_default.dbproc_admin_update');
    Route::post('/dbproc_admin_delete', [MemoDefaultController::class, 'dbproc_memo_delete'])->name('memo.dbproc_admin_delete');
});

 

web.php 변경을 하였다면 캐시를 초기화 하여야 한다

ssh 접속

cd /프로젝트폴더

캐시 초기화

#>php artisan route:cache

** evn 등 config 파일 수정시

#>php artisan config:clear

#>php artisan route:cache


이렇게 일일이 링크 등록 해야 컨트롤러가 동작 한다.

자바 따라가네..... 예전에 자바스프링이 xml파일에 링크 일일이 등록한걸로 기억하는데....

지금은 어노테이션 쓰던가....


route:list --options

다음 옵션을 사용할 수 있습니다.

--name : 지정한 이름의 route만 표시합니다.

--path : 지정된 route의 경로만 표시합니다.

--method : 지정된 HTTP 메서드(GET, POST, PUT, DELETE 등)가 있는 route만 표시합니다.

--reverse : 표시된 route의 순서를 역순으로 바꿉니다.

--sort : 표시된 route를 이름별로 정렬합니다.

이름 검색

#>php artisan route:list --name=memo

메소드 검색

#>php artisan route:list --method=get


2. resource 로 등록하는 방법 - 안됨...이유모름..... ㅠㅠ ....

/routes/web.php

 

<?php

use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/

Route::get('/', function () {
    return view('welcome');
});


// 메모 컨트롤러를  추가 하였다
use App\Http\Controllers\MemoController;
Route::resource('memo', MemoController::class);

 

작성 하였다면 라우터 캐시 초기화

#>php artisan route:cache

라우터 목록 확인

#>php artisan route:list

컨트롤러생성후 web.php 에등록만 해도 기본적인 메소드가 생성이 되는건가?

index , store , show , update , destroy , edit

​근데 안된다.... 이유는 모름....ㅠㅠ

728x90