やりたいこと
- カラム(date型)の表記をview側で変えたい
- 例:「2020/08/25」→「08/25」
解決
こんなロケールファイルがあるとする。
#翻訳ファイル ja: date: formats: default: "%Y年%m月%d日" ym_jp: "%Y年%m月" ym: "%Y%m" ymd_hy: "%Y-%m-%d" da_jp: "%e日(%a)" short: "%Y/%m/%d" md: "%m月%d日" sm: "%m/%d" time: formats: default: "%Y年%m月%d日(%a) %H:%M" short: "%Y/%m/%d %H:%M" time_only: "%H:%M" date_only: "%m月%d日" date_and_time: "%m月%d日%H:%M"
date以下のフォーマットを指定する。
#viewファイル li = l(ranking.ranked_on, format: :sm)
間違っていた方法
間違ってtimeからフォーマットを選んでいた。これだとdefaultとshortは表示されるが、time_onlyやそれ以下のフォーマットはエラーになって表示されなかった。timeだから当たり前だ・・・
#viewファイル li = l(ranking.ranked_on, format: :date_only)
参考:【初心者向け・動画付き】Railsで日時をフォーマットするときはstrftimeよりも、lメソッドを使おう - Qiita