빠른 테스트 - Guard & Zeus
Zeus & Guard zeus는 rails app을 미리 로딩해 두어서, test 실행 마다 로딩에 걸리는 시간을 줄일 수 있습니다. guard는 파일이 변경되는 것을 인지해서, 변경된 spec 파일의 test suits만 실행시켜줍니다. guard 설정은 테스트 자동화 - guard를 참고하세요. Gemfile group :development, :test do gem 'zeus' end Zeus 설치 & 시작 zeus start GuardFile 수정 guard :rspec, cmd: "zeus rspec" do ... Guard 시작 guard RailsCasts
Ruby - Naver 검색광고 API
API Access License 와 Secret Key를 발급받자. (네이버 검색광고 에 들어가 도구 > API 사용관리) Header에 다음을 추가해야 한다. X-Timestamp X-API-KEY X-Customer X-Signature require 'net/http' ... service_url = "https://api.naver.com" uri = URI.parse(service_url) req = Net::HTTP::Get.new(uri) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = (uri.scheme == 'https') res = http.request(req) puts res.body X-Signature은 Secret Key를 이용 아래 data를 sha256-hmac 으로 인코딩해야 한다. data = Milliseconds since Unix Epoch + '.' + http method + '.' + request_uri require...
Chrome에서 video tag 사용
Chrome limits the number of videos/audio files to 4 or 6 (I can’t remember which) so, as brianchirls mentions, you need to set the preload attribute, although you need to set it to none. My recommendation is to provide a poster image (via the poster attribute) for all your videos and to set preload=”none” to all of them. That way the browser only actually tries to load them if the user actively clicks the play...
Carrierwave video thumbnailer
video tag의 poster attribute에 동영상이 재생되기 전에 보이는 이미지를 정해 줄 수 있다. w3school에서 poster attribute를 설정하지 않으면 동영상의 첫 frame이 사용된다고 했는데, Chrome에서는 이미지가 뜨지않았다. carrierwave-video-thumbnailer gem을 이용해서 간단히 poster attribute 용 이미지를 만들었다. class MediaUploader < CarrierWave::Uploader::Base include CarrierWave::Video::Thumbnailer version :thumb do process_extensions VIDEO_EXTENSIONS, thumbnail: [{format: 'png', quality: 5, size: 400, strip: false, logger: Rails.logger}] def full_filename for_file png_name for_file, version_name end end thumb이라는 버전으로 만들어 두었다. 쓸 때는 <Model>.media.thumb.url 으로 사용하면 된다....
Single Uploader Multiple Content Type