class ActionView::PartialRenderer
def collection_with_template
def collection_with_template view, locals, template = @view, @locals, @template as, counter, iteration = @variable, @variable_counter, @variable_iteration if layout = @options[:layout] layout = find_template(layout, @template_keys) end partial_iteration = PartialIteration.new(@collection.size) locals[iteration] = partial_iteration @collection.map do |object| locals[as] = object locals[counter] = partial_iteration.index content = template.render(view, locals) content = layout.render(view, locals) { content } if layout partial_iteration.iterate! content end end