instance method
button
Ruby on Rails 4.2.9
Since v3.2.22.5Signature
button(value = nil, options = {}, &block)
Add the submit button for the given form. When no value is given, it checks if the object is a new resource or not to create the proper label:
<%= form_for @post do |f| %>
<%= f.button %>
<% end %>
In the example above, if @post is a new record, it will use “Create Post” as button label, otherwise, it uses “Update Post”.
Those labels can be customized using I18n, under the helpers.submit key (the same as submit helper) and accept the %{model} as translation interpolation:
en:
helpers:
submit:
create: "Create a %{model}"
update: "Confirm changes to %{model}"
It also searches for a key specific for the given object:
en:
helpers:
submit:
post:
create: "Add %{model}"
Examples
button("Create a post")
# => <button name='button' type='submit'>Create post</button>
button do
content_tag(:strong, 'Ask me!')
end
# => <button name='button' type='submit'>
# <strong>Ask me!</strong>
# </button>
Parameters
-
valueopt = nil -
optionsopt = {} -
blockblock
Source
# File actionview/lib/action_view/helpers/form_helper.rb, line 1858
def button(value = nil, options = {}, &block)
value, options = nil, value if value.is_a?(Hash)
value ||= submit_default_value
@template.button_tag(value, options, &block)
end
Defined in actionview/lib/action_view/helpers/form_helper.rb line 1858
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActionView::Helpers::FormBuilder