Browse files

Remove deprecated form_for with strings or symbols

Signed-off-by: Santiago Pastorino <santiago@wyeworks.com>
  • Loading branch information...
1 parent c52e2cf commit be797750e6ce866ea08307f63bf35304a965c8d4 @lcapillera lcapillera committed with spastorino Nov 18, 2010
View
12 actionpack/lib/action_view/helpers/form_helper.rb
@@ -303,15 +303,9 @@ def form_for(record, options = {}, &proc)
options[:html] ||= {}
- case record
- when String, Symbol
- object_name = record
- object = nil
- else
- object = record.is_a?(Array) ? record.last : record
- object_name = options[:as] || ActiveModel::Naming.param_key(object)
- apply_form_for_options!(record, options)
- end
+ object = record.is_a?(Array) ? record.last : record
+ object_name = options[:as] || ActiveModel::Naming.param_key(object)
+ apply_form_for_options!(record, options)
options[:html][:remote] = options.delete(:remote)
builder = options[:parent_builder] = instantiate_builder(object_name, object, options, &proc)
View
3 actionpack/test/template/erb/form_for_test.rb
@@ -1,10 +1,11 @@
require "abstract_unit"
require "template/erb/helper"
+require "controller/fake_models"
module ERBTest
class TagHelperTest < BlockTestCase
test "form_for works" do
- output = render_content "form_for(:staticpage, :url => {:controller => 'blah', :action => 'update'})", ""
+ output = render_content "form_for(Post.new, :url => {:controller => 'blah', :action => 'update'})", ""
assert_match %r{<form.*action="/blah/update".*method="post">.*</form>}, output
end
end
View
4 actionpack/test/template/erb/helper.rb
@@ -4,6 +4,8 @@ class ViewContext
include ActionView::Helpers::TagHelper
include ActionView::Helpers::JavaScriptHelper
include ActionView::Helpers::FormHelper
+ include ActionView::Context
+ include ActionController::RecordIdentifier
attr_accessor :output_buffer, :controller
@@ -20,4 +22,4 @@ def block_helper(str, rest)
"<%= #{str} do %>#{rest}<% end %>"
end
end
-end
+end
View
33 actionpack/test/template/form_helper_test.rb
@@ -781,23 +781,6 @@ def test_form_for_with_remote_without_html
assert_dom_equal expected, output_buffer
end
- def test_form_for_without_object
- form_for(:post, :html => { :id => 'create-post' }) do |f|
- concat f.text_field(:title)
- concat f.text_area(:body)
- concat f.check_box(:secret)
- end
-
- expected = whole_form("/", "create-post") do
- "<input name='post[title]' size='30' type='text' id='post_title' value='Hello World' />" +
- "<textarea name='post[body]' id='post_body' rows='20' cols='40'>Back to the hill and over it again!</textarea>" +
- "<input name='post[secret]' type='hidden' value='0' />" +
- "<input name='post[secret]' checked='checked' type='checkbox' id='post_secret' value='1' />"
- end
-
- assert_dom_equal expected, output_buffer
- end
-
def test_form_for_with_index
form_for(@post, :as => "post[]") do |f|
concat f.label(:title)
@@ -867,22 +850,6 @@ def test_submit_with_object_as_existing_record_and_locale_strings
I18n.locale = old_locale
end
- def test_submit_without_object_and_locale_strings
- old_locale, I18n.locale = I18n.locale, :submit
-
- form_for(:post) do |f|
- concat f.submit :class => "extra"
- end
-
- expected = whole_form do
- "<input name='commit' class='extra' id='post_submit' type='submit' value='Save changes' />"
- end
-
- assert_dom_equal expected, output_buffer
- ensure
- I18n.locale = old_locale
- end
-
def test_submit_with_object_and_nested_lookup
old_locale, I18n.locale = I18n.locale, :submit

0 comments on commit be79775

Please sign in to comment.