Я ищу способ сбросить структуру объекта, аналогично функциям PHP print_r
и var_dump
для отладки.
ruby-on-rails
ruby
Даниэль Риковски
источник
источник
puts theobject.inspect.gsub(",", "\n")
В просмотрах:
В контроллерах, моделях и другом коде:
Источник
источник
В представлении, которое вы можете использовать,
<%= debug(yourobject) %>
будет создано представление YAML для ваших данных. Если вы хотите что-то в своем журнале, вы должны использоватьlogger.debug yourobject.inspect
.источник
Вы также можете использовать сокращение YAML :: dump ( y ) в консоли Rails:
Если вы хотите просто предварительно просмотреть содержимое строки, попробуйте использовать поднять (например, в моделях, контроллерах или другом недоступном месте). Вы получаете трассировку бесплатно :)
Я также очень рекомендую вам попробовать ruby-debug :
Это невероятно полезно!
источник
Вы можете использовать
puts some_variable.inspect
. Или сокращенный вариант:p some_variable
. А для более красивого вывода вы можете использовать гем awesome_print .источник
Если вы просто хотите, чтобы соответствующие данные отображались в stdout (вывод терминала, если вы работаете из командной строки), вы можете использовать
p some_object
.источник
Предыдущие ответы хороши, но если вы не хотите использовать консоль (терминал), в Rails вы можете распечатать результат в представлении, используя отладочную вспомогательную функцию ActionView :: Helpers :: DebugHelper.
результаты (в браузере)
источник
Пользуюсь этим :)
источник
В последнее время я использую метод awesome_print ,
ap
который работает как на консоли, так и в представлениях.Цветной вывод для конкретного типа действительно имеет значение, если вам нужно визуально сканировать объекты
String
илиNumeric
(хотя мне пришлось немного подправить свою таблицу стилей, чтобы получить безупречный вид)источник
Недавно я стал поклонником PRY , я обнаружил, что он отлично подходит для таких вещей, как проверка переменных, отладка запущенного кода и проверка внешнего кода. Ответ на этот конкретный вопрос может показаться излишним.
источник