not good but great

プログラミング、アート、映画・本の感想について書きます。

Rubyで現地時刻を取得して整形、Herokuのタイムゾーンを東京に変更する

require 'time'

item = feed.items[i]
date = Time.parse(item.date.to_s).getlocal.strftime("%Y-%m-%d %H:%M:%S")

コードは一部抜粋。feedの日付部分を取得して、stringに変換。それをparseメソッドに渡す。現地時刻に変換するのはgetlocal。整形はstrftime。

・参考
指定フォーマットで文字列に変換する - 時刻(Time)クラス - Ruby入門

HerokuのTZを変更

herokuで動かすと、日本時間で出力されなかった。環境変数をいじる必要があるようだ。

$ heroku config:add TZ=Asia/Tokyo

このコマンドを入力したら、うまくいった。
http://d.hatena.ne.jp/kitokitoki/20130127/p2