aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view
diff options
context:
space:
mode:
authorJosé Valim <jose.valim@gmail.com>2012-01-17 23:33:02 -0800
committerJosé Valim <jose.valim@gmail.com>2012-01-17 23:33:02 -0800
commitd4a9ce8ec06f72215c9ee3d9c4d0156fdad6e571 (patch)
treedf97f7f8d7c65cb5d6ec7c5cbac1d6bba410be3f /actionpack/lib/action_view
parent2de2ea8879a670b40da99c65bd2f520d1fd182af (diff)
parentc65f79deae45e0f5d8980b6fd3197a3da5fcd572 (diff)
downloadrails-d4a9ce8ec06f72215c9ee3d9c4d0156fdad6e571.tar.gz
rails-d4a9ce8ec06f72215c9ee3d9c4d0156fdad6e571.tar.bz2
rails-d4a9ce8ec06f72215c9ee3d9c4d0156fdad6e571.zip
Merge pull request #4509 from rafaelfranca/form_tag-refactor
Refactor form_for and form_tag
Diffstat (limited to 'actionpack/lib/action_view')
-rw-r--r--actionpack/lib/action_view/helpers/form_helper.rb6
-rw-r--r--actionpack/lib/action_view/helpers/form_tag_helper.rb5
2 files changed, 5 insertions, 6 deletions
diff --git a/actionpack/lib/action_view/helpers/form_helper.rb b/actionpack/lib/action_view/helpers/form_helper.rb
index 10277599a0..2d6103a350 100644
--- a/actionpack/lib/action_view/helpers/form_helper.rb
+++ b/actionpack/lib/action_view/helpers/form_helper.rb
@@ -376,9 +376,9 @@ module ActionView
builder = options[:parent_builder] = instantiate_builder(object_name, object, options, &proc)
fields_for = fields_for(object_name, object, options, &proc)
default_options = builder.multipart? ? { :multipart => true } : {}
- output = form_tag(options.delete(:url) || {}, default_options.merge!(options.delete(:html)))
- output << fields_for
- output.safe_concat('</form>')
+ default_options.merge!(options.delete(:html))
+
+ form_tag(options.delete(:url) || {}, default_options) { fields_for }
end
def apply_form_for_options!(record, object, options) #:nodoc:
diff --git a/actionpack/lib/action_view/helpers/form_tag_helper.rb b/actionpack/lib/action_view/helpers/form_tag_helper.rb
index e3ad96ec1b..57b90a9c42 100644
--- a/actionpack/lib/action_view/helpers/form_tag_helper.rb
+++ b/actionpack/lib/action_view/helpers/form_tag_helper.rb
@@ -636,13 +636,12 @@ module ActionView
def form_tag_html(html_options)
extra_tags = extra_tags_for_form(html_options)
- (tag(:form, html_options, true) + extra_tags).html_safe
+ tag(:form, html_options, true) + extra_tags
end
def form_tag_in_block(html_options, &block)
content = capture(&block)
- output = ActiveSupport::SafeBuffer.new
- output.safe_concat(form_tag_html(html_options))
+ output = form_tag_html(html_options)
output << content
output.safe_concat("</form>")
end