instance method
fields_for
Ruby on Rails 3.0.20
Since v3.0.20Signature
fields_for(record_or_name_or_array, *args, &block)
No documentation comment.
Parameters
-
record_or_name_or_arrayreq -
argsrest -
blockblock
Source
# File actionpack/lib/action_view/helpers/form_helper.rb, line 1143
def fields_for(record_or_name_or_array, *args, &block)
if options.has_key?(:index)
index = "[#{options[:index]}]"
elsif defined?(@auto_index)
self.object_name = @object_name.to_s.sub(/\[\]$/,"")
index = "[#{@auto_index}]"
else
index = ""
end
if options[:builder]
args << {} unless args.last.is_a?(Hash)
args.last[:builder] ||= options[:builder]
end
case record_or_name_or_array
when String, Symbol
if nested_attributes_association?(record_or_name_or_array)
return fields_for_with_nested_attributes(record_or_name_or_array, args, block)
else
name = "#{object_name}#{index}[#{record_or_name_or_array}]"
end
when Array
object = record_or_name_or_array.last
name = "#{object_name}#{index}[#{ActiveModel::Naming.singular(object)}]"
args.unshift(object)
else
object = record_or_name_or_array
name = "#{object_name}#{index}[#{ActiveModel::Naming.singular(object)}]"
args.unshift(object)
end
@template.fields_for(name, *args, &block)
end
Defined in actionpack/lib/action_view/helpers/form_helper.rb line 1143
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActionView::Helpers::FormBuilder