훈련소를 다녀와서 코드를 보고 머리가 돌아가는 속도가 떨어졋다지만 이 정도 일줄은 몰라서 2시간 동안 해멘건데 적어둡니다.
Laravel에선 Route 을 할때 slug를 설정해 컨트롤러에 Model을 넣어줄수 있다. (DI.. 맞나?)
암튼 거기서 실수한 썰을 짦게 남겨 놓습니다.
<?php //web.php
Route::get('/korea/{korea}', '[email protected]');
<?php //KoreaController.php
class KoreaController extender Controller
{
// ...
public function show(Korea $korae)
{
return $korae->toJson();
}
// ...
}
죽어라 /korea/1
로 접근 해도 안되어 미치는 줄 알았는데,KoreaController
의 show
메서드를 자세히 보면 ‘korea’가 아니라 ‘korae’ 였다.
즉, Route에서 설정한 {korea}와 Controller에서 입력받는 ‘korae’가 다르기 때문에 ‘Korea’모델을 불러올 수 없었던 거였다.
예ㅖㅖ전에 튜토리얼에서 본 것 같은데 까먹고 있다가 3~4시간 헤메다 겨우 찾았다..