Module: ActionView::Helpers::DebugHelper
- Included in:
- ActionView::Helpers
- Defined in:
- lib/action_view/helpers/debug_helper.rb
Overview
Provides a set of methods for making it easier to debug Rails objects.
Instance Method Summary collapse
-
#debug(object) ⇒ Object
Returns a YAML representation of
object
wrapped with <pre> and </pre>.
Instance Method Details
#debug(object) ⇒ Object
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.
Example
@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:
attributes_cache: {}
new_record: true
</pre>
27 28 29 30 31 32 33 34 35 |
# File 'lib/action_view/helpers/debug_helper.rb', line 27 def debug(object) begin Marshal::dump(object) "<pre class='debug_dump'>#{h(object.to_yaml).gsub(" ", " ")}</pre>".html_safe rescue Exception => e # errors from Marshal or YAML # Object couldn't be dumped, perhaps because of singleton methods -- this is the fallback "<code class='debug_dump'>#{h(object.inspect)}</code>".html_safe end end |