Ich verwende Rails.logger.debug Druckvariablen für Debugging-Zwecke. Das Problem ist, dass Ausdrucke in einem nicht lesbaren Format gedruckt werden (Schlüssel können nicht von Werten unterschieden werden). Zum Beispiel, füge ich die folgenden Zeilen in meinem Code-BasisWie Rails.logger.debug Druck Hash besser lesbar machen
#code_base.rb
my_hash = {'a' => 'alligator', 'b'=>'baboon'}
Rails.logger.debug my_hash
Dann starte ich meine Rails-Anwendung und Typ
tail -f log/development.log
Aber wenn my_hash gedruckt wird, sieht es aus wie
bbaboonaalligator
Der Schlüssel und die Werte sind zusammengedrückt, was es unmöglich macht, zu analysieren. Weißt du, was ich tun soll, um das zu beheben?
Groß hier Tipp! 'to_yaml' erzeugt auch eine Zeichenkette, aber sie ist mit' \ n' und Einrückung formatiert, so dass es viel einfacher ist, einen großen oder verschachtelten Hash zu überfliegen ... Wenn Sie versuchen, ein Hash-ähnliches Objekt (zB 'params') zu protokollieren, Sie können damit enden, dass 'ivars' die Daten, die Sie interessieren, verstopfen. Machen Sie zuerst einen normalen Hash und dann diesen zu yaml:' logger.debug params.to_hash.to_yaml' – alxndr