본문 바로가기

프로그래밍/Laravel

1강 Basic

# Routes

라라벨의 핵심은 public 단의 index.php가 아니다.

바로! app > Http 단의 routes.php가 핵심이다.

routes.php 파일은 아래와 같이 구성되어 있다.


사용자가 '/' URL로 접근하면 'Hello Hello'를 출력하는 콜백 메소드를 실행하여 리턴한다. 

1
2
3
Route::get('/', function() {
    return 'Hello Hello';
}); 

cs


사용자가 '/' URL로 접근하면 WelcomeController의 index 메소드를 실행하여 리턴한다.

1
Route::get('/''WelcomeController@index');
cs




# Named Route

route를 여러개 등록하면 각 역할이 무엇인지 구분하기가 어렵다.

그래서 'as' 키워드를 사용하여 route에 이름을 지정한다.


1
2
3
4
5
6
7
8
//'profile'이라는 이름으로 'user/profile'을 정의한다.
Route::get('user/profile', ['as' => 'profile'
    'uses' => 'WelcomeController@profile']);  
 
//'/user/profile'로 이동하는 URL이 출력된다.
Route::get('test', function(){
    return route('profile');
});
cs




# CSRF 토큰

get 메소드에 대해서는 문제가 없으나,

post 메소드를 실행할 때에는 보안에 취약하다.

따라서 라라벨은 CSRF 토큰을 제공한다.


1
2
3
4
<input type="hidden"
       name="_token"
       value="<?php echo csrf_token(); ?>"
>
cs



# Controller
app > Http 단에 Controllers가 있다.



# View
Controller에서 모든 것을 스트링으로 처리할 수 없기때문에 View가 필요하다.
라라벨에서 블레이드 템플릿 엔진을 이용해서 파라미터를 전달받고 작업을 해서 html인 뷰를 리턴한다.