Ruby Проверяет читаемость?

Есть ли способ сделать вывод проверки более удобочитаемым?

В Perl существует Data::Dumper, что делает вывод более легким для чтения.

Ответ 1

Стандартная библиотека ruby ​​содержит PP (сокращенно для "Pretty Print" ), которая форматирует структуры намного лучше, чем стандартная проверка:

http://www.ruby-doc.org/stdlib/libdoc/pp/rdoc/index.html

Вам нужно require 'pp' в начале исходного файла, прежде чем вы сможете его использовать, а затем просто замените p obj на pp obj в вашем коде.

Я считаю, что это действительно полезно для хэшей и массивов в частности!

Ответ 3

Помимо решения "pp", yaml может быть решением.

Try:

require 'yaml'
puts [1,2,3=>'three'].to_yaml

Вы получаете:

--- 
- 1
- 2
- 3: three

И совершенно другой подход: напишите свой собственный контрольный код, если у вас есть проблема проверки с определенным классом

Пример:

class MyTest
  def initialize()
    @created = Time.now
  end
  def inspect()
    "Hi, I'm the objected created at #{@created}. That #{Time.now - @created} seconds ago"
  end
end

x = MyTest.new
sleep 5
puts x.inspect

Вы получаете

Hi, I'm the objected created at 2011-06-28 12:48:38 +0100. That 5.0 seconds ago

Ответ 4

как @tjbp сказал, просто просто используйте pretty_inspect() вместо проверки()

он даст вам хороший разрыв строки и отступы

Ответ 5

Это будет работать и отлично выглядеть:)

в вашем gemfile:

group :development do
  gem 'table_print', '~> 1.5.3'
end

на ваш взгляд:

<pre>
<%= TablePrint::Printer.new(@users, []).table_print %>
</pre>