Ruby on Rails:针对variable.hash_set.inspect的漂亮打印......有没有办法在控制台中打印漂亮的.inpsect?

Nul*_*uli 15 ruby console ruby-on-rails

我发现自己在功能测试中做了很多put .inpsect,以确保我知道数据是如何格式化的......但是当哈希对象中的每个条目之后没有新行时,哈希很难读取.无论如何,也许是宝石?,漂亮的印刷哈希?

所以它看起来像这样:

{ 
  entry1 => { 
              entrey1.1 => 1,
              entry1.2 => 3
            },
  entry2 => 3
}
Run Code Online (Sandbox Code Playgroud)

而不是:{ entry1 => { entrey1.1 => 1, entry1.2 => 3}, entry2 => 3 }

谢谢!

pau*_*kul 28

你可以使用awesome_print gem.

https://github.com/michaeldv/awesome_print

require 'awesome_print' # if you like to have it in irb by default, add it to your irbrc
>> ap({:a => 1, :b => [1,2,3], :c => :d})
{
    :b => [
        [0] 1,
        [1] 2,
        [2] 3
    ],
    :a => 1,
    :c => :d
}
Run Code Online (Sandbox Code Playgroud)

顺便说一句,而不是puts object.inspect你也可以p object在打印之前使用对象中的哪些调用.另一种方式来打印对象不是默认的看跌期权更好一点是使用pp从红宝石STDLIB(http://ruby-doc.org/stdlib/libdoc/pp/rdoc/index.html)