ABOUT ME

0. 기분이 태도가 되지 않게... 1. 견해를 보류할 것. 2. 견해 표명을 보류할 것. 3. 존중할 것. 4. 친절할 것. 對人春風 千客萬來

Today
Yesterday
Total
  • Route::resource
    백엔드/laravel 2024. 1. 28. 17:58

     

    Route::resource는 Laravel에서 제공하는 기능 중 하나로, CRUD(Create, Read, Update, Delete) 작업을 수행하기 위한 일련의 라우트 및 컨트롤러 메소드를 한 번에 정의할 수 있게 해주는 편리한 도구입니다.

    이를 통해 자동으로 생성된 라우트 및 컨트롤러 메소드를 사용하여 리소스 관리를 간편하게 할 수 있습니다.

     

    사용법은 다음과 같습니다:

     

    Route::resource('articles', ArticleController::class);

     

    여기서 'articles'는 리소스의 URI를 나타내며, ArticleController::class는 이 리소스를 관리할 컨트롤러를 지정합니다.

    위의 코드를 사용하면 Laravel은 아래와 같은 라우트를 자동으로 생성합니다:

     

    Verb         Path                        Action         Route Name
    ----------------------------------------------------------------
    GET              /articles                      index          articles.index
    GET              /articles/create             create         articles.create
    POST            /articles                      store          articles.store
    GET              /articles/{article}           show          articles.show
    GET              /articles/{article}/edit     edit            articles.edit
    PUT/PATCH    /articles/{article}            update        articles.update
    DELETE         /articles/{article}            destroy        articles.destroy

     

    이렇게 생성된 라우트와 컨트롤러 메소드는 일반적인 CRUD 작업에 사용됩니다.

    각 메소드에 대한 설명은 다음과 같습니다:

    • index: 리소스의 목록을 보여주는 페이지를 반환합니다.
    • create: 새로운 리소스를 생성하는 폼을 보여주는 페이지를 반환합니다.
    • store: 새로운 리소스를 저장합니다. (POST 요청)
    • show: 특정 리소스의 세부 정보를 보여주는 페이지를 반환합니다.
    • edit: 특정 리소스를 수정하는 폼을 보여주는 페이지를 반환합니다.
    • update: 특정 리소스를 수정합니다. (PUT 또는 PATCH 요청)
    • destroy: 특정 리소스를 삭제합니다. (DELETE 요청)

     

    이러한 메소드 및 라우트는 자동으로 생성되므로, 일반적인 CRUD 작업을 수행하는 데 큰 도움이 됩니다.

     

    php artisan route:list;

    ------------------------

    POST          articles: 저장하는 라우트로, ArticleController@store 액션을 수행합니다.
    GET            articles/create:  생성하는 폼을 표시하는 라우트로, ArticleController@create 액션을 수행합니다.
    PUT|PATCH  articles/{article}:  업데이트하는 라우트로, ArticleController@update 액션을 수행합니다.
    DELETE       articles/{article}:  삭제하는 라우트로, ArticleController@destroy 액션을 수행합니다.
    GET            articles/{article}/edit: 수정하는 폼을 표시하는 라우트로, ArticleController@edit 액션을 수행합니다.

    댓글

Designed by Tistory.