diff options
Diffstat (limited to 'actionpack/lib')
-rw-r--r-- | actionpack/lib/action_pack/version.rb | 2 | ||||
-rw-r--r-- | actionpack/lib/action_view/helpers/form_helper.rb | 20 |
2 files changed, 21 insertions, 1 deletions
diff --git a/actionpack/lib/action_pack/version.rb b/actionpack/lib/action_pack/version.rb index 584e5c3791..fcf0eb9565 100644 --- a/actionpack/lib/action_pack/version.rb +++ b/actionpack/lib/action_pack/version.rb @@ -3,7 +3,7 @@ module ActionPack MAJOR = 3 MINOR = 1 TINY = 0 - PRE = "beta1" + PRE = "rc1" STRING = [MAJOR, MINOR, TINY, PRE].compact.join('.') end diff --git a/actionpack/lib/action_view/helpers/form_helper.rb b/actionpack/lib/action_view/helpers/form_helper.rb index 07e2c8d341..cb1c13912a 100644 --- a/actionpack/lib/action_view/helpers/form_helper.rb +++ b/actionpack/lib/action_view/helpers/form_helper.rb @@ -555,6 +555,19 @@ module ActionView # ... # <% end %> # + # In addition, you may want to have access to the current iteration index. + # In that case, you can use a similar method called fields_for_with_index + # which receives a block with an extra parameter: + # + # <%= form_for @person do |person_form| %> + # ... + # <%= person_form.fields_for_with_index :projects do |project_fields, index| %> + # Position: <%= index %> + # Name: <%= project_fields.text_field :name %> + # <% end %> + # ... + # <% end %> + # # When projects is already an association on Person you can use # +accepts_nested_attributes_for+ to define the writer method for you: # @@ -1216,6 +1229,13 @@ module ActionView RUBY_EVAL end + # Check +fields_for+ for docs and examples. + def fields_for_with_index(record_name, record_object = nil, fields_options = {}, &block) + index = fields_options[:index] || options[:child_index] || nested_child_index(@object_name) + block_with_index = Proc.new{ |obj| block.call(obj, index) } + fields_for(record_name, record_object, fields_options, &block_with_index) + end + def fields_for(record_name, record_object = nil, fields_options = {}, &block) fields_options, record_object = record_object, nil if record_object.is_a?(Hash) fields_options[:builder] ||= options[:builder] |