Forum: Ruby on Rails rails source fields_for has an options hash not defined anywhere

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
4e052fdd89cd9ada89361a2ea15c2d8c?d=identicon&s=25 John M. (johnmerlino)
on 2012-03-21 22:13
(Received via mailing list)
Hey all,

I looked at source code for fields_for:

def fields_for(record_name, record_object = nil, fields_options = {},
  fields_options, record_object = record_object, nil if
record_object.is_a?(Hash) && record_object.extractable_options?
  fields_options[:builder] ||= options[:builder]
  fields_options[:parent_builder] = self
  fields_options[:namespace] =

  case record_name
  when String, Symbol
    if nested_attributes_association?(record_name)
      return fields_for_with_nested_attributes(record_name,
record_object, fields_options, block)
    record_object = record_name.is_a?(Array) ? record_name.last :
    record_name   = ActiveModel::Naming.param_key(record_object)

  index = if options.has_key?(:index)
  elsif defined?(@auto_index)
    self.object_name = @object_name.to_s.sub(%r\[\]$/,"")
  record_name = "#{object_name}#{index}[#{record_name}]"

  @template.fields_for(record_name, record_object, fields_options,

Notice this part:


this options hash is no where to be defined. In argument list, there's
only a fields_options hash. Reason why this matters to me is because I
am trying to override this method in my application_helper.rb in order
to extend it.
eggie5 (Guest)
on 2013-04-03 18:11
(Received via mailing list)
I want to know this too. Did you find out?
Frederick Cheung (Guest)
on 2013-04-03 19:44
(Received via mailing list)
On Wednesday, April 3, 2013 6:21:59 AM UTC+1, eggie5 wrote:
> I want to know this too. Did you find out?
That fields_for method is an instance method of FormBuilder, which has
an attr_accessor :options

This topic is locked and can not be replied to.