인생이 쓰다!인생쓰

개발/라라벨(PHP프레임워크)

Laravel Route(라우트)란?

Johnal 2021. 4. 5. 17:23
반응형

일단 Route라는 뜻에 대해서 알고 간다고 하면 라우팅은 어떤 네트워크안에서 통신 데이터를 보낼 때 최적의 경로를 선택하는 과정입니다. 최적의 경로는 주어진 데이터를 가장 짧은 거리로 또는 가장 적은 시간 안에 전송할 수 있는 경로라고 생각하시면 될것같네요.

 

가장 기본적인 라라벨 라우트는 URI을 전달받아 이동한다고 생각하시면 됩니다. 

 

 

라라벨 라우트

 

일단 기본적으로 모든 라라벨의 라우트는 route라는 디렉토리안에 들어있는 라우트 파일에 정의되어 있습니다.

이 파일들은 기본적으로 프레임워크에 의해서 자동으로 로드됩니다. 

 

web.php

routes/web.php 파일은 웹 인터페이스를 위한 라우트들을 정의합니다. 

대부분의 애플리케이션에서 web.php파일에 라우트를 정의하면서 사용할수 있습니다.

 

web.php 파일을 열어보시면 기본적으로 welcome이라는 뷰를 가게 되어있네요.

http://127.0.0.1/ 기본적으로 로컬에 접속하게되면 welcome이라는 뷰를 띄우는데

 

이 welcome View는 블레이드템플릿을 가리키면서 뷰를 반환합니다.

 

블레이드 컴플릿

 

welcome

기본적으로 Route::를 사용하면서 뒤에는 get이나 post방식을 붙혀 원하는 방식으로 라우트를 할수있네요.

 

그리고 이렇게 web.php내부에서 뷰화면의 설정이나 원하는 retrun 값을 뿌려주는데

컨트롤러를 이용해서 분리 하여 더 깔끔하고 정리되어있는 화면을 구성할수 있다고 생각합니다.

 

 

컨트롤러 사용

이런식으로 POST방식으로 BoardController의 create를 가져와서 사용하겠다. 하면 주소는 이런식으로 되겠죠.

http://127.0.0.1/boardCreate 

그리고 뒤쪽에 붙는 -> name('boardCreate') 로 라우트의 이름을 지어줄수 있습니다. 

 

이렇게 저장한 라우트의 이름은 블레이드파일에서 

 

이런식으로 사용이 가능합니다. 

 

 

그리고 미들웨어(MiddleWare)를 사용해서 권한이나 다른것들을 체크후에 라우팅을 해줄수도 있습니다. 이 미들웨어는

로그인이 되어있는지를 판단하는 미들웨어이고 로그인이 안되어있으면 해당라우팅이 진행이 안되게됩니다.

 

 

또한 여러개의 라우트 파라미터를 정의하고 전송할수도있습니다. 또한 정규식 제약이나 글로벌 제약 등 다양한 라우트들을 사용하고 정의할수있습니다.

 

라우트는 이정도로 볼수있겠습니다. 한단계 한단계 공부하면서 새로운 라우트들도 사용해보면서 프로젝트를 생성하고 정리해보겠습니다.

728x90
반응형