ActionView::Helpers::DateHelper
def time_tag(date_or_time, content = nil, options = {}, &block)

説明

日付か日時の <time> を作ります。

引数

値を変えると、ERB と HTML が変わります。

iso8601 の形にして、datetime 属性の値にします。引数の content を渡さないときは、この日付や日時を訳した文字列を中身にします。Date、DateTime、Time 以外を渡すと、I18n::ArgumentError になります(引数の content を渡したときは NoMethodError)。
= nil
<time> の中身にします。中身はエスケープします。デフォルトでは引数の date_or_time を I18n.l で訳した文字列を中身にします。
options= {}
引数の content を渡さないときに、中身の文字列を作る形です(content を渡したときは、使いません)。渡す値によって、次のように変わります。
  • Symbol:訳の date.formats か time.formats から、その名前のキーの値を取り出して、strftime に渡します(:short なら date.formats.short の値)。訳にない名前を渡すと、I18n::MissingTranslationData になります(ブロックを渡しても同じです)。
  • 文字列("%Y年"):strftime の形として使います。
このサイトの日本語の訳は rails-i18n と同じ値で、英語は Rails が持っている訳です。
"2026-W46"
引数の date_or_time から作る値の代わりに、渡した値を datetime 属性の値にします。中身は変わりません。
ヘルパー共通の options

Rails はどのヘルパーでも、これらの options を同じように処理します。HTML の仕様で <time> に使えないものや、使う場面が少ないとこのサイトで判断したものは、ここでは省いています。

すべてのヘルパー共通

true にすると disabled="disabled" を追加し、false にすると追加しません。readonly、required、autofocus など、Rails が持っている一覧(BOOLEAN_ATTRIBUTES)にある HTML 属性はどれも同じで、値が false と nil 以外なら 属性名="属性名" の形で追加します。
{active: true, hidden: false}
Hash を渡すと、値が false と nil 以外のキーを空白でつなぎます。配列を渡すと、nil、false、空の文字列(空白だけの文字列も)を外して、空白でつなぎます。
{controller: "tags", tags_suggestions_value: ["ruby", "rails"]}
Hash を渡すと、キーの _ を - にして、data-* 属性を追加します。値に配列や Hash を渡すと、JSON の文字列にします。
{describedby: ["name_help", "name_error"], invalid: false}
:data と同じく、aria-* 属性を追加します。値が配列なら、nil と空の文字列を外して、空白でつなぎます(何も残らなければ、追加しません)。値が Hash なら、値が false と nil 以外のキーを空白でつなぎます。
["section-user", "name"]
配列を渡すと、要素を空白でつないで autocomplete 属性の値にします。
/[a-z]+/i
正規表現を渡すと、/ と / の間の部分を pattern 属性の値にします。i などのフラグは、値に入りません。
ここにない options は、<time> の HTML 属性になります。値が nil なら、その HTML 属性は追加しません。
&block= nil
ブロックを渡すと、ブロックの出力を中身にします。引数の content も渡したときは、content を使いません。

ERB

直前との違い: 追加 削除 変更


          

HTML


          

プレビュー