method

date_field

Importance_2
date_field(object_name, method, options = {}) public

Returns a text_field of type “date”.

date_field("user", "born_on")
# => <input id="user_born_on" name="user[born_on]" type="date" />

The default value is generated by trying to call strftime with “%Y-%m-%d” on the object’s value, which makes it behave as expected for instances of DateTime and ActiveSupport::TimeWithZone. You can still override that by passing the “value” option explicitly, e.g.

@user.born_on = Date.new(1984, 1, 27)
date_field("user", "born_on", value: "1984-05-12")
# => <input id="user_born_on" name="user[born_on]" type="date" value="1984-05-12" />

You can create values for the “min” and “max” attributes by passing instances of Date or Time to the options hash.

date_field("user", "born_on", min: Date.today)
# => <input id="user_born_on" name="user[born_on]" type="date" min="2014-05-20" />

Alternatively, you can pass a String formatted as an ISO8601 date as the values for “min” and “max.”

date_field("user", "born_on", min: "2014-05-20")
# => <input id="user_born_on" name="user[born_on]" type="date" min="2014-05-20" />
Show source
Register or log in to add new notes.