module ActionView::Helpers::DebugHelper - actionview-4.2.3 Documentation

# module ActionView::Helpers::DebugHelper

### Public Instance Methods

debug(object) click to toggle source

Returns a YAML representation of `object` wrapped with <pre> and </pre>. If the object cannot be converted to YAML using `to_yaml`, `inspect` will be called instead. Useful for inspecting an object at the time of rendering.

    @user = User.new({ username: 'testing', password: 'xyz', age: 42})
    debug(@user)
    # =>
    <pre class='debug_dump'>--- !ruby/object:User
    attributes:
      updated_at:
      username: testing
      age: 42
      password: xyz
      created_at:
    </pre>

    # File lib/action_view/helpers/debug_helper.rb, line 25
    def debug(object)
      Marshal::dump(object)
      object = ERB::Util.html_escape(object.to_yaml)
      content_tag(:pre, object, :class => "debug_dump")
    rescue Exception  # errors from Marshal or YAML
      # Object couldn't be dumped, perhaps because of singleton methods -- this is the fallback
      content_tag(:code, object.inspect, :class => "debug_dump")
    end