라라벨 웹 팅커 free

2019-08-22

벨은 팅커(tinker)고 부르는 REPL을 제공합니다. REPL은 (Read Evaluate Print Loop)의 약자로 커맨드인에서 즉석으로 코드를 실행하고 결과를 확인하는 도구입니다. 팅커를 이용하면 커맨드인에서 벨 애플리케이션을 조작할 수 있습니다. php artisan tinker로 실행합니다.


스파티에서 웹브우저에서 사용할 수 있는 벨 팅커 패키지를 만들었습니다. 굳이 브우저로 팅커를 사용할 이유가 있을까? 싶지만 벨 뉴스에서는 실제로 써보니 다음과 같은 장점이 있었다고 합니다.



  • 여러 줄로 된 코드를 작성하고 실행하기 편리함

  • 코드가 실행 후 사지지 않게 할 수 있어서, 코드를 조금씩 수정해가면서 실행해볼 수 있음


최근에 저도 인가(Authorization)쪽 코드를 실험해보면서 팅커를 쓸 이 있었는데, 커맨드인에서는 위에 언급된 장점들이 없어서 꽤나 불편했었습니다. 어쩌면 제 필수 패키지 목록에 추가될지도 모르겠네요 :)


설치


컴포저로 설치합니다.


composer require spatie/laravel-web-tinker --dev

설치 후엔 아래 커맨드로 화면을 표시하는데 필요한 에셋들을 프로젝트로 가져옵니다.


php artisan web-tinker:install

사용


/tinker 우트로 접근하면 팅커 페이지가 나타납니다.


스크린샷 2019-08-22 오후 3.06.46.png


당연한 이야기지만 보안상 매우 위험하기 때문에 로컬에서만 사용하셔야 합니다.


버그??


팅커 페이지까지는 나타났는데요, 제거에서는 뭔가 제대로 동작을 안하네요. 아무런 메시지도 나타나지 않고, 로그도 안찍힙니다. 에고고 설명대로면 아래와 같은 화면이 나온다고 합니다.



소개하는 패키지가 제대로 작동이 안되서 살짝 당황스럽긴 한데, 그래도 스파티에서 만드는 패키지이니 조만간 문제가 해결될거 믿고 공유해봅니다.


PS. 늦어서 죄송해요! 이래 저래 삽질하다가 많이 늦어버렸네요 ㅠ


1 1 벨 38호
2019년 8월 22



이현석

메쉬 코리아 개발자. 바쁜 팀장님 대신 알려주는 신입 PHP 개발자 안내서를 쓰고, 클린 아키텍처 인 PHP를 번역했습니다. 2020년에 출간될 Laravel Up & Running 2nd Edition을 번역하고 있습니다.