Есть ли способ сделать вывод проверки более удобочитаемым?
В Perl существует Data::Dumper
, что делает вывод более легким для чтения.
Есть ли способ сделать вывод проверки более удобочитаемым?
В Perl существует Data::Dumper
, что делает вывод более легким для чтения.
Стандартная библиотека ruby содержит PP (сокращенно для "Pretty Print" ), которая форматирует структуры намного лучше, чем стандартная проверка:
http://www.ruby-doc.org/stdlib/libdoc/pp/rdoc/index.html
Вам нужно require 'pp'
в начале исходного файла, прежде чем вы сможете его использовать, а затем просто замените p obj
на pp obj
в вашем коде.
Я считаю, что это действительно полезно для хэшей и массивов в частности!
Попробуйте awesome_print: http://www.rubyinside.com/awesome_print-a-new-pretty-printer-for-your-ruby-objects-3208.html
Помимо решения "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
как @tjbp сказал, просто просто используйте pretty_inspect() вместо проверки()
он даст вам хороший разрыв строки и отступы
Это будет работать и отлично выглядеть:)
в вашем gemfile:
group :development do
gem 'table_print', '~> 1.5.3'
end
на ваш взгляд:
<pre>
<%= TablePrint::Printer.new(@users, []).table_print %>
</pre>