質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

Q&A

解決済

1回答

8045閲覧

Railsの日本語での日付表示について

Yuinyan

総合スコア312

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

0グッド

0クリップ

投稿2016/11/04 06:29

###前提・実現したいこと

例えば、start_atというDatetimeフォーマットのデータがあり、日本語で表示させたい場合、

Ruby

1<%= post.start_at.strftime("%Y/%m/%d(#{%w(日 月 火 水 木 金 土)[post.start_at.wday]]})") %>

という感じにすることで、実現しますが、strftimeを使うと、データがない場合にエラーになってしまうので、initializerでTimeformatsを規定して、下記のように日本語で表示させています。

ruby

1<%= post.start_at.to_s(:days_jp) %>

ruby

1Time::DATE_FORMATS[:days_jp] = "%Y年%m月%d日(%a曜日) %H時%M分"

しかし、現状、曜日は日本語にはなってくれません。
strftimeはどうも使い勝手が悪いので、initializerを規定することで曜日を表示させたいと思っています。どのように実現することが出来ますでしょうか。

###発生している問題・エラーメッセージ

上記のように実装しているのですが、曜日が日本語になってくれません。
下記のように表示されてしまいます。

2016年11月11日(Fri曜日) 15時56分

私のlocale(ja.yml)には、下記のようにしています。

date: abbr_day_names: - "日" - "月" - "火" - "水" - "木" - "金" - "土" day_names: - 日曜日 - 月曜日 - 火曜日 - 水曜日 - 木曜日 - 金曜日 - 土曜日

###試したこと

localeの書き方として例えば金曜日であれば、

fri: "金"

みたいに書いてみましたが、エラーが出てしまいました。

###補足情報(言語/FW/ツール等のバージョンなど)
Rails 4.2.3

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

I18n.localize (aka I18n.l) もなかなか便利ですよ。

rails-i18n gemが入っているなら

ruby

1I18n.l(Model.first.created_at, format: :long) # => "2016年10月26日(水) 10時00分46秒 +0000"

といった感じです。

投稿2016/11/04 07:32

hana-da

総合スコア1728

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Yuinyan

2016/11/04 12:12

いつも有難うございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問