0

私は自分の見解で示していることがあります

<td><%= something.foo_time %></td>
<td><%= something.bar_time %></td>

現在、それらは次のように表示されます

2000-01-01 05:24:00 UTC
2000-01-01 15:24:00 UTC

しかし、私は日付を収集していないので、時刻だけを表示したいのですが、年とタイムゾーンを除いた AM/PM スタイルで表示します。

strf フォーマットhttp://www.ruby-doc.org/core-2.0/Time.html#method-i-strftimeを使用してみましたが、機能しません

<td><%= something.foo_time("%I:%M%p") %></td>

私も試しました

<td><%= something.foo_time "%H:%M:" %></td>

そしてそれもうまくいきませんでした。

どうすれば行けますか

2000-01-01 15:24:00 UTC

3:24 PM
4

2 に答える 2

1

いつでもヘルパーを作成できます

module ApplicationHelper
   def display_date(input_date)
    if !input_date
      return ''
    end

    return input_date.strftime("%d/%m/%Y")
  end

end

次に、私の例のようにビューを呼び出して<%= display_date time_var %>
、日付を AM/PM スタイルにフォーマットしませんが、投稿したリンクのように、ドキュメントでこれを行う方法を簡単に見つけることができます:t.strftime("at %I:%M%p") #=> "at 08:37AM"

return input_date.strftime("%I:%M%p")私の方法は、リンクに従って変更できます

于 2013-07-29T18:59:19.960 に答える
1

最も簡単な方法は、次のようにすることです。

something.foo_time.strftime("%I:%M%p")

ただし、次の URL で Rails の DATE_FORMATS を調べ、存在する場合はデフォルトを使用するか、初期化子を介して追加して独自のものを作成します。

http://api.rubyonrails.org/classes/Time.html

次に、これを行うことができます:

something.foo_time.to_s(:time)
于 2013-07-29T19:01:02.680 に答える