분류 전체보기 (433) 썸네일형 리스트형 1달에 한번 쓴다면서 4달만에 쓰는 사람(2021.09.19) 롤 중독자; 요즘 게으름이 부쩍 늘었다. 한달에 한번 쓰는 일기 블로그 글 쓰기도 귀찮아하고 있었을 뿐더러, 그 외에 많은 것들을 게으름 피우고 있었다. 대표적으로 하루에 30분 책 읽기, 스터디 준비, 개발 공부 등 전부 미루고 미루다 한 번에 몰아서 하고 있다. 이렇게 게으름 피우게 된 데는 여러 이유가 있는데 대표적으로 요즘 게임에 너무 재미를 붙였다. 스스로도 게임할 때가 아닌 걸 알지만... 하루 고생했으니까 셀프 선물이라 생각하고 하루 2시간 정도씩 주말에는 몇시간씩 하다보니 이게 꽤 많이 시간을 뻇기게 된다. 갑자기 빠지게 된 이유는 지지난달에 회사에서 5대5 롤 내전을 하는데 너무 재밌었다. 그래서 그 뒤로 꾸준히 열심히 하게 되버렸고 최근에는 랭크게임도 다시 시작하게 되면서 옛티어를 되찾.. Rails 분석 Gem 비교(조회수, 방문통계 등) 특정 모델에 대해서 조회수 기능이 필요할 때나 웹 사이트에 대해서 방문자 통계, 이벤트 트래킹이 필요할 때가 있다. 레일즈에서는 이런 이벤트 트래킹 관련해서 여러가지로 활용할 수 있는 대표적인 Gem이 두가지가 있다. Impressionist랑 Ahoy라는 Gem이다. 두 Gem 모두 많이 활용되는 Gem 이며 뚜렷한 장점이 있었다. 이번에 두 Gem 모두 써보게 되어서 나름의 간단한 비교를 해보려고 한다. 단순 정량 데이터 비교 출처 정량 데이터로만 보면 Ahoy 쪽이 조금 더 관리가 많이 되고 있고 일반적으로 더 선호하고 있다. 개인적으로 생각했을 때, 방문자 통계를 제공해주는 기능이 더 강력하고 Rails 프레임워크의 강점과 조금 더 잘맞는 Gem이어서 그런가싶다. Impressionist http.. Rails Cache 캐시 Rails에서 제공하는 다양한 캐시 옵션들이 있다. 공식 문서에 이미 충분히 잘 정리되어 있지만, 그대로 읽어보고 공부하고자 한다. Page Caching Disk page cache가 아닌 Web page cache이다. advtionpack-page_caching gem을 통해서 처리할 수 있으며, 파일로 처리한다. 엔드포인트 E의 요청에 따라 WEB sever가 동적으로 제공하는 페이지 F를 File에다가 저장해둔다 후에 E의 요청이 들어오면 Rails의 전체 stack을 거치지않고 저장한 페이지 F를 바로 제공한다. Action Caching Page Caching과 같은 동작을 처리하지만, Page Caching은 인증과 같은 필터 작업을 할 수 없는 반면에 Action Caching은 필터까지.. 드디어 기어나온 (2021.05.08) 드디어 기어나온 사람 4달만에 일기를 쓰게 되었다. 2월은 노느라 게을렀고, 3,4월도 음... 바쁘긴했지만 조금 게을렀던 것 같다. 새로운 곳에서 적응하느라 바쁜 것도 있었지만, 충분히 시간을 내려면 일기를 쓸 수 있었지 않았을까 하는 생각이 든다. 그래도 쉴 때만큼은 컴퓨터를 조금 안보고 싶었던 것도 있었다. 그러다가 2달 쯤이 지나니 다시금 여유를 찾을 수 있을 것 같다는 생각이 들어 조금씩 블로그 관리를 해보려고 한다. 밥값하기 어렵다 2달 동안 공부하고 따라가느라 애먹었다. 지금도 당연히 무지 그 자체긴 하다. 일하는 시간 중 8할 정도는 서치에 썼던 것 같다(그리고 생각보다 프레임워크나 언어의 공식문서들이 친절한 것도 알게 되었다...) 여튼, 그렇게 헤매는 시간이 많았고 당분간 앞으로도 많을.. Rails API 만들기 (feat. Postman 사용) 개요 API 라는 단어는 익숙하고 만들어진 API를 수정해본 적은 있으나 생각해보니 처음부터 만들어본 적이 없었다. 테스트 환경도 전부 세팅 되어있던 것들을 통해 진행하다보니, 간단한 것이라도 처음부터 만들어보고자 해서 포스팅을 해보게 되었다. 가장 기본적인 게시글 작성(post create)을 API 형태로 만들고 이를 postman을 통해 테스트를 해보고자 한다. API 작성 Rails 프로젝트를 하나 만든다. rails new 프로젝트명 bundle install 기본적인 Model과 Controller 생성해준다. 그리고 당연히 migrate도 해준다. rails g model Post title:string content:string user_id:integer rails g model User.. Rails Test (feat. TDD를 위한 기반) 개요 Rails 에서는 어플리케이션 Test를 위해 기본적으로 Test 모듈(?)들을 제공해준다. 최근에는 Rspec 이 대중적으로 많이 쓰인다고 하지만, Rails 기본 제공 Test 모듈들도 괜찮다는 평이 많은듯 하다(깃헙 눈팅 결과...) (내가 했던 것들이 테스트가 맞나...) 사실 웹 어플리케이션 테스트는 유저 Behavior를 시뮬레이션하고 서버 로그를 확인하는 정도로 매번 진행했었다. 그렇지만 그렇게 하면서 매번 정확한 테스트가 될지에 대한 걱정들도 없지 않았고 당연히 적절한 방식이 아니라고 생각했다. Spring 개발환경에서는 무거워서 다방면의 테스트가 쉽지않다는 이야기들도 있었고, 보안상의 DB 접근 등 여러 문제로 쉽지 않았던 것 같다. 어찌됐든, Rails 에서는 테스트 환경을 조금 .. Rails 손쉬운 검색 form ransack Ransack Rails 내에서 search form을 손쉽게 만들기 위해서 사용되는 젬인 ransack 에 대해서 알아보고자 한다. 주로 admin 페이지에서 활용하기 위함으로 사용되며, 손쉽게 search form을 커스텀할 수 있다. (참고 ransack의 성능에 대한 이야기, 요약하자면 abstraction layer로서, ransack 자체가 DB 조회에 대한 성능을 좌우하진 않음) 아래와 같은 페이지를 만드는게 목적이다. 아래 이미지의 좌측에 존재하는 저러한 검색 form을 만들어서 조금 더 손쉽게 검색을 할 수 있도록 하고자 하는데 rails 내에서는 ransack gem을 통해서 손쉽게 만들 수 있다. 프로젝트 사전 준비 준비물 rails 프로젝트 faker – fake 데이터를 만들어주는.. Rails Database 관리 Gem(rails_db) 레일즈 db 구조나 데이터를 손쉽게 보고 관리할 수 있는 rails_db라는 Gem이 있다. 초기 개발 단계나 소규모에서 편하게 쓸 수 있는 Gem인듯 하다. 기본 프로젝트 환경 세팅 간단하게 rails 프로젝트를 생성해준다. rails new project 그리고 title(제목)과 content(내용) 컬럼을 지닌 Post 모델을 생성해준다. rails g scaffold Post title:string content:string 모델을 생성해줬으니 migrate 해준다. rake db:migrate localhost:3000/posts의 주소로 가면 아래와 같이 index페이지가 확인된다. 그리고 New Post를 클릭해서 게시글을 여러개 생성해준다. Gem rails_db 이제 본격적으로 rail.. 이전 1 2 3 4 5 6 ··· 55 다음