0
0

More than 3 years have passed since last update.

日時を日本時間で表示する

Posted at

目的

アプリ内で作成したレコードを表示させる際に、デフォルトのUTC(協定世界時)からJST(日本標準時)に変更し表示させる。

準備

事前にアプリケーションの基本的な機能が実装されているものとして話を進めます。
まずユーザーでもなんでもいいので、テーブルにレコードを作成します。
Sequel ProなどのGUIツールで確認すると、created_atカラムに日本時間よりも約9時間遅い時間で作成されたことになっているはずです。ここから日本時間で表示する設定をしていきます。

手順

config/application.rbに以下の記述をします。

config/application.rb
# 省略

class Application < Rails::Application
  config.time_zone = 'Tokyo'

end

アプリを立ち上げた段階で既にコードが用意されているので、その中からclass Applicationを探し、その中にタイムゾーンの記述をします。

この後、必ずサーバを再起動してから確認してください。でないと表示が変わりません。

また表示方法としては、

created_at.strftime("%Y/%m/%d %H:%M")
# →2020/01/01 のように表示できます。

などとすることで、見やすい表示となります。

補足

GUIツールで確認すると、created_atの時間自体は変更後も変わりません。(UTCのまま)
あくまで、画面に表示させるときにUTC(協定世界時)からJST(日本標準時)に変換してくれるようなイメージです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0