Method: ActionView::Helpers::FormHelper#date_field
- Defined in:
- actionview/lib/action_view/helpers/form_helper.rb
#date_field(object_name, method, options = {}) ⇒ Object
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" />
1442 1443 1444 |
# File 'actionview/lib/action_view/helpers/form_helper.rb', line 1442 def date_field(object_name, method, = {}) Tags::DateField.new(object_name, method, self, ).render end |