본문 바로가기

RUBY

[RUBY]루비로 AWS Athena 사용하기 Gemaws-sdk gem 안에 athena 서비스를 사용할 수 있는 함수도 포함되어 있다. 함수 사용하는 방법 처음에 aws-sdk를 사용할 때는, 아테나에 쿼리를 보내면 바로 결과값을 리턴해주는 기능이 있을거라고 기대했다.마치 jdbc를 사용하듯이 사용할 수 있을줄 알았다. 그런데 약간 개념이 달랐다.참고링크 : ATHENA RUBY SDK 사용법 이렇게 클라이언트를 만들고client = Aws::Athena::Client.new(region: 'us-east-1') 이렇게 쿼리를 날리면, 이 때 날린 쿼리의 아이디가 담긴 객체가 리턴된다resp = client.start_query_execution({ query_string: "SELECT * FROM impressions WHERE year='2..
[rails]테스트코드 - Rspec rspec gemgem 'rspec-rails'api document - http://rspec.info/documentation/3.5/rspec-rails/ 같이 사용하면 좋은 gemfactory_grilactive record의 mock data를 만들 때 편하다. 테스트 코드를 돌릴 때, test db에 가상의 목데이터를 만들어주고, 테스트코드가 모두 돌아가고 나면 자동으로 rollback을 해준다.gem 'factory_girl'https://github.com/thoughtbot/factory_girl 스터디하기 좋은 동영상 강의code school - rspec https://www.codeschool.com/courses/testing-with-rspec예전에 회사에서 스터디로 했었는데, ..
[루비스타일가이드]RUBY String의 to_s와 += 회사에서 최근 품질관리를 위하여 루보콥을 사용하고 있다.어떻게 사용하고 있냐 하면은, git을 커밋할 때 마다 루보콥이 돌고 remote 브랜치에 push를 할 때면 RSPEC이 돈다.그래서 commit 할 때, Rubocop과 Rspec이 도는 것을 이번 주에 처음 해보았다.RSPEC이 REMOTE push 때마다 매번 도는건 여전히 귀찮지만 루보콥이 도는건 꽤 만족한다. 루보콥에서 걸린 것들을 고쳐나가면서, 루비 스타일 가이드를 읽게되니 기존의 소스코드가 아닌 다른 방법으로 루비를 배워가는 기분이여서 좋다 ㅎㅁㅎ 그러면서 알게된 String Class와 관련된 루비 스타일 가이드를 정리해보고자 한다. 1. to_s를 쓰지 말라! [link]"#{object}" 이런식으로 "#{ }" String 형태..
[RAILS]before_filter에 넘어오는 파라미터에 따라 필터 적용 여부 결정하기 만약 HelloWorld라는 컨트롤러에 before filter를 달고 싶은데, 넘어오는 파라미터에 따라 필터 적용 여부를 결정하고 싶을 때가 있다.이 경우에는 before_filter에 block을 넣고, if 분기를 추가하면된다. class HelloWorldController < ApplicationController before_filter(only: [:create]) do admin_log if (params[:admin_grade] == 'staff') end 예를 들면, admin_grade 파라미터에 넘어오는 값이 staff일 경우에만 어드민 접근 로그를 남기는 admin_log라는 함수를 사용하고 싶을 수 있다. 이 경우, 위에 처럼 before_filter block을 생성해서, if..
[rubyonrails]active record의 timezone 설정하기 루비온 레일즈에서 데이터 베이스에 현재 시각이 다르게 나오는 이슈 해결하기루비온레일즈 콘솔로 DateTime.now를 하면 현재 시각이 잘 나오는데, DB에 저장할 경우 created_at의 시각이 다르게 나오는 현상이 발생했다. 이유를 찾아보다가... 액티브 레코드 설정값을 local로 바꾸어주면 된다는 것을 발견했다.application.rb에 default timezone을 로컬로 설정해주면 된다.config/application.rbconfig.active_record.default_timezone = :local 후훗!
[ruby] ruby / rails로 자동 로그인 봇만들기 나는 미생이다그래서 이번 추석은 미생을 위하여 달려야했지만, 항상 시험전날에는 딴짓을 하게 되듯딴짓을 하였다.ㅎ_ㅎ 인생이 걸렸는뎀 ㅎ_ㅎ딴짓잼..ㅎ_ㅎ크롤링 잼.. 크롤링덕후되버려쓰 ㅎ_ㅎ거의 살면서 첨으로 내 플밍 능력으로 나한테 편한 기능을 만들었다 ㅎ_ㅎ 긱스러운거 만든적이 첨이라 뿌듯 ㅎ_ㅎ 오늘 만든건 '자동 로그인 봇'이다. 어느 카페에서 등업을 하려면 로그인 기록이 몇십회 되어야하는데 매일 깜빡해서 로그인을 못했다.그래서 나는 등업을 하려면.. 정말 몇년 후가 될 필이였다. 그래서 RUBY로 매일 새벽에 자동 로그인하는 봇을 만들었다. 웹서버 OR AWS를 사용하는 건 아니지만, GEM을 편하게 사용하려고 RAILS를 사용했다.MECHANIZE랑 WHENEVER GEM을 사용하니까 금방 뚝..