From 101ebc996a241fab4adcbbaf6c8930dddde8d091 Mon Sep 17 00:00:00 2001 From: Rick Olson Date: Tue, 18 Jul 2006 15:42:22 +0000 Subject: Allow form_for and fields_for to work with indexed form inputs. [Jeremy Kemper, Matt Lyon] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@4613 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- actionpack/lib/action_view/helpers/form_helper.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'actionpack/lib') diff --git a/actionpack/lib/action_view/helpers/form_helper.rb b/actionpack/lib/action_view/helpers/form_helper.rb index eef7d1f567..43185e3a0c 100644 --- a/actionpack/lib/action_view/helpers/form_helper.rb +++ b/actionpack/lib/action_view/helpers/form_helper.rb @@ -238,7 +238,11 @@ module ActionView @template_object, @local_binding = template_object, local_binding @object = object if @object_name.sub!(/\[\]$/,"") - @auto_index = @template_object.instance_variable_get("@#{Regexp.last_match.pre_match}").id_before_type_cast + if object ||= @template_object.instance_variable_get("@#{Regexp.last_match.pre_match}") and object.respond_to?(:id_before_type_cast) + @auto_index = object.id_before_type_cast + else + raise ArgumentError, "object[] naming but object param and @object var don't exist or don't respond to id_before_type_cast: #{object.inspect}" + end end end -- cgit v1.2.3