def render(*args, &block)
      if args.first.is_a?(Hash) && args.first[:active_scaffold]
        render_embedded args.first
      elsif args.first == :super
        @_view_paths ||= lookup_context.view_paths.clone
        @_last_template ||= lookup_context.last_template
        parts = @virtual_path.split('/')
        template = parts.pop
        prefix = parts.join('/')

        options = args[1] || {}
        options[:locals] ||= {}
        if view_stack.last
          options[:locals] = view_stack.last[:locals].merge!(options[:locals]) if view_stack.last[:locals]
          options[:object] ||= view_stack.last[:object] if view_stack.last[:object]
        end
        options[:template] = template
        # if prefix is active_scaffold_overrides we must try to render with this prefix in following paths
        if prefix != 'active_scaffold_overrides'
          options[:prefixes] = lookup_context.prefixes.drop((lookup_context.prefixes.find_index(prefix) || -1) + 1)
        else
          options[:prefixes] = ['active_scaffold_overrides']
          last_view_path = File.expand_path(File.dirname(File.dirname(lookup_context.last_template.inspect)), Rails.root)
          lookup_context.view_paths = view_paths.drop(view_paths.find_index { |path| path.to_s == last_view_path } + 1)
        end
        result = super options
        lookup_context.view_paths = @_view_paths if @_view_paths
        lookup_context.last_template = @_last_template if @_last_template
        result
      else
        @_view_paths ||= lookup_context.view_paths.clone
        last_template = lookup_context.last_template
        current_view = if args[0].is_a?(Hash)
                         {:locals => args[0][:locals], :object => args[0][:object]}
                       else # call is render 'partial', locals_hash
                         {:locals => args[1]}
                       end
        view_stack << current_view if current_view
        lookup_context.view_paths = @_view_paths # reset view_paths in case a view render :super, and then render :partial
        result = super
        view_stack.pop if current_view.present?
        lookup_context.last_template = last_template
        result
      end
    end
def render(*args, &block)
      if args.first.is_a?(Hash) && args.first[:active_scaffold]
        render_embedded args.first
      elsif args.first == :super
        @_view_paths ||= lookup_context.view_paths.clone
        @_last_template ||= lookup_context.last_template
        parts = @virtual_path.split('/')
        template = parts.pop
        prefix = parts.join('/')

        options = args[1] || {}
        options[:locals] ||= {}
        if view_stack.last
          options[:locals] = view_stack.last[:locals].merge!(options[:locals]) if view_stack.last[:locals]
          options[:object] ||= view_stack.last[:object] if view_stack.last[:object]
        end
        options[:template] = template
        # if prefix is active_scaffold_overrides we must try to render with this prefix in following paths
        if prefix != 'active_scaffold_overrides'
          options[:prefixes] = lookup_context.prefixes.drop((lookup_context.prefixes.find_index(prefix) || -1) + 1)
        else
          options[:prefixes] = ['active_scaffold_overrides']
          last_view_path = File.expand_path(File.dirname(File.dirname(lookup_context.last_template.inspect)), Rails.root)
          lookup_context.view_paths = view_paths.drop(view_paths.find_index { |path| path.to_s == last_view_path } + 1)
        end
        result = super options
        lookup_context.view_paths = @_view_paths if @_view_paths
        lookup_context.last_template = @_last_template if @_last_template
        result
      else
        @_view_paths ||= lookup_context.view_paths.clone
        last_template = lookup_context.last_template
        current_view = if args[0].is_a?(Hash)
                         {:locals => args[0][:locals], :object => args[0][:object]}
                       else # call is render 'partial', locals_hash
                         {:locals => args[1]}
                       end
        view_stack << current_view if current_view
        lookup_context.view_paths = @_view_paths # reset view_paths in case a view render :super, and then render :partial
        result = super
        view_stack.pop if current_view.present?
        lookup_context.last_template = last_template
        result
      end
    end
Adds two rendering options.

 ==render :super

 This syntax skips all template overrides and goes directly to the provided ActiveScaffold templates.
 Useful if you want to wrap an existing template. Just call super!

 ==render :active_scaffold => #{controller.to_s}, options = {}+

 Lets you embed an ActiveScaffold by referencing the controller where it's configured.

 You may specify options[:constraints] for the embedded scaffold. These constraints have three effects:
   * the scaffold's only displays records matching the constraint
   * all new records created will be assigned the constrained values
   * constrained columns will be hidden (they're pretty boring at this point)

 You may also specify options[:conditions] for the embedded scaffold. These only do 1/3 of what
 constraints do (they only limit search results). Any format accepted by ActiveRecord::Base.find is valid.

 Defining options[:label] lets you completely customize the list title for the embedded scaffold.

 options[:xhr] force to load embedded scaffold with AJAX even when render_component gem is installed.