2

カスタムフォーマットが欲しい:resultsので、ビューで電話をかけることができ@obj.date.to_s(:results)ます。

カスタムフォーマットをイニシャライザーに入れると、次のように機能します。

Time::DATE_FORMATS[:results] = "%D"

ただし、それをファイルに入れようとすると、en.yml機能しません(期待どおりにフォーマットされないため)。

en:
  time:
    # See also config/initializers/time_formats.rb for lambda based configs
    formats:
      results: '%D'
  date:
    formats:
      default: '%m/%d/%Y"'
      results: '%D'

私が読んだすべては、これがうまくいくはずだと示唆しています。私は何が欠けていますか?

編集:これは基本的に、en.ymlでカスタムの日付と時刻の形式を取得しないRailsの複製です。したがって、問題は、初期化ではなくymlでデフォルトを設定する方法です(管理が簡単です)。組み込みの方法はありますか、それともyamlファイルを手動でロードしてTime::DATE_FORMAT自分でハッシュを設定する必要がありますか?

4

1 に答える 1

1

答えは、Railsがen.ymlでカスタムの日付と時刻の形式を取得しないことです。

あなたが言及した2番目の方法は、I18n(国際化)を使用することです。これは、それを使用することを意味します。

あなたの見解では、あなたはすることができます

<%= l @obj.date, format: :result %> 
于 2013-02-28T00:57:39.423 に答える