diff options
author | José Valim <jose.valim@gmail.com> | 2011-12-11 06:06:41 -0800 |
---|---|---|
committer | José Valim <jose.valim@gmail.com> | 2011-12-11 06:06:41 -0800 |
commit | 78de996562fc1802f820f65b1abed552cc92bfd9 (patch) | |
tree | 05fc3b124e1f4079652da723613b08f8fe8cee7a /actionpack/lib | |
parent | 79835090e2ddd3f73101f52cfa74ad38ce130374 (diff) | |
parent | 3f65e7f7be92adfb2d89ec23ef28a96d2bfae294 (diff) | |
download | rails-78de996562fc1802f820f65b1abed552cc92bfd9.tar.gz rails-78de996562fc1802f820f65b1abed552cc92bfd9.tar.bz2 rails-78de996562fc1802f820f65b1abed552cc92bfd9.zip |
Merge pull request #3933 from wfarr/master
Add button_tag support to ActionView::Helpers::FormBuilder
Diffstat (limited to 'actionpack/lib')
-rw-r--r-- | actionpack/lib/action_view/helpers/form_helper.rb | 33 | ||||
-rw-r--r-- | actionpack/lib/action_view/locale/en.yml | 6 |
2 files changed, 39 insertions, 0 deletions
diff --git a/actionpack/lib/action_view/helpers/form_helper.rb b/actionpack/lib/action_view/helpers/form_helper.rb index 1a64b12aa6..ccb2275329 100644 --- a/actionpack/lib/action_view/helpers/form_helper.rb +++ b/actionpack/lib/action_view/helpers/form_helper.rb @@ -1364,6 +1364,39 @@ module ActionView @template.submit_tag(value, options) end + # 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 + # submit button label, otherwise, it uses "Update Post". + # + # Those labels can be customized using I18n, under the helpers.submit key and accept + # the %{model} as translation interpolation: + # + # en: + # helpers: + # button: + # create: "Create a %{model}" + # update: "Confirm changes to %{model}" + # + # It also searches for a key specific for the given object: + # + # en: + # helpers: + # button: + # post: + # create: "Add %{model}" + # + def button(value=nil, options={}) + value, options = nil, value if value.is_a?(Hash) + value ||= submit_default_value + @template.button_tag(value, options) + end + def emitted_hidden_id? @emitted_hidden_id ||= nil end diff --git a/actionpack/lib/action_view/locale/en.yml b/actionpack/lib/action_view/locale/en.yml index eb816b9446..f2a83b92a9 100644 --- a/actionpack/lib/action_view/locale/en.yml +++ b/actionpack/lib/action_view/locale/en.yml @@ -152,3 +152,9 @@ update: 'Update %{model}' submit: 'Save %{model}' + # Default translation keys for button FormHelper + button: + create: 'Create %{model}' + update: 'Update %{model}' + submit: 'Save %{model}' + |