So erhalten Sie eine gute Formatierung in der Rails-Konsole
Möchte ich, um so etwas schön Aussehen:
>> ProductColor.all
=> [#<ProductColor id: 1, name: "White", internal_name: "White", created_at: "2009-06-10 04:02:44", updated_at: "2009-06-10 04:02:44">, #<ProductColor id: 2, name: "Ivory", internal_name: "Ivory", created_at: "2009-06-10 04:02:44", updated_at: "2009-06-10 04:02:44">, #<ProductColor id: 3, name: "Blue", internal_name: "Light Blue", created_at: "2009-06-10 04:02:44", updated_at: "2009-06-10 04:02:44">, #<ProductColor id: 4, name: "Green", internal_name: "Green", created_at: "2009-06-10 04:02:44", updated_at: "2009-06-10 04:02:44">]
Dies nicht funktioniert:
>> ProductColor.all.inspect
=> "[#<ProductColor id: 1, name: \"White\", internal_name: \"White\", created_at: \"2009-06-10 04:02:44\", updated_at: \"2009-06-10 04:02:44\">, #<ProductColor id: 2, name: \"Ivory\", internal_name: \"Ivory\", created_at: \"2009-06-10 04:02:44\", updated_at: \"2009-06-10 04:02:44\">, #<ProductColor id: 3, name: \"Blue\", internal_name: \"Light Blue\", created_at: \"2009-06-10 04:02:44\", updated_at: \"2009-06-10 04:02:44\">, #<ProductColor id: 4, name: \"Green\", internal_name: \"Green\", created_at: \"2009-06-10 04:02:44\", updated_at: \"2009-06-10 04:02:44\">]"
Und auch nicht dieses:
>> ProductColor.all.to_yaml
=> "--- \n- !ruby/object:ProductColor \n attributes: \n name: White\n created_at: 2009-06-10 04:02:44\n updated_at: 2009-06-10 04:02:44\n id: \"1\"\n internal_name: White\n attributes_cache: {}\n\n- !ruby/object:ProductColor \n attributes: \n name: Ivory\n created_at: 2009-06-10 04:02:44\n updated_at: 2009-06-10 04:02:44\n id: \"2\"\n internal_name: Ivory\n attributes_cache: {}\n\n- !ruby/object:ProductColor \n attributes: \n name: Blue\n created_at: 2009-06-10 04:02:44\n updated_at: 2009-06-10 04:02:44\n id: \"3\"\n internal_name: Light Blue\n attributes_cache: {}\n\n- !ruby/object:ProductColor \n attributes: \n name: Green\n created_at: 2009-06-10 04:02:44\n updated_at: 2009-06-10 04:02:44\n id: \"4\"\n internal_name: Green\n attributes_cache: {}\n\n"
Gedanken?
InformationsquelleAutor der Frage Tom Lehman | 2009-08-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
y
- Methode ist ein praktischer Weg, um einige ziemlich YAML-Ausgabe.Vorausgesetzt, Sie sind in
script/console
Als jordanpg kommentierte, diese Antwort ist veraltet. Für Rails 3.2+, die Sie benötigen, um führen Sie den folgenden code, bevor man die
y
Methode zu arbeiten:Vom ruby-docs
Für rails 4/ruby 2 konnten Sie nur
InformationsquelleAutor der Antwort ryanb
Sollten Sie versuchen,hirb. Es ist ein Juwel aus zu Recht-format-Objekte in der ruby-Konsole. Dein script/console session würde dann so Aussehen:
Erfahren Sie mehr über hirb an seine homepage.
InformationsquelleAutor der Antwort cldwalker
Awesome drucken ist auch schön wenn Sie möchten, dass ein Objekt eingerückt. So etwas wie:
Integrieren standardmäßig mit Ihrem irb/rails/pry-Konsole, fügen Sie zu Ihrer
~/.irbrc
oder~/.pryrc
Datei:InformationsquelleAutor der Antwort Alter Lagos
Kann auch darauf hingewiesen werden, dass Sie verwenden können:
Ausgabe im Json-format anstatt im Yaml
InformationsquelleAutor der Antwort davidcollom
Einfach funktioniert!
Quelle: https://stackoverflow.com/a/4830096
InformationsquelleAutor der Antwort Rody
Hallo Sie können auch versuchen, diese in Ihrem script/console wenn
nicht für Sie arbeiten.
Versuchen Sie dies:
dann
InformationsquelleAutor der Antwort Allen Chun
Verwenden
irbtools
gem.Es wird automatisch formatieren Sie die Ausgabe in der Konsole plus erhalten Sie Tonnen von großartigen features.
InformationsquelleAutor der Antwort CodeMaster123
Hatte ich einige Probleme machen es arbeiten also ich ' ll hinzufügen meine zwei Cent auf awesome_print
fügen Sie diese zu Ihrem Gemfile, vorzugsweise in
:development
gem 'awesome_print', require: 'ap'
dann in
rails console
können Sie tun
> ap Model.all
Das ist es. Aber Sie können auch hinzufügen
in deine ~/.irbrc, auf diese Weise awesome_print werden benötigt, wenn Sie die Konsole öffnen, und Sie können einfach tun
Modell.alle
ohne die Notwendigkeit der Eingabe von ap
InformationsquelleAutor der Antwort AndreiMotinga
Möchten Sie vielleicht, um zu definieren, ProductColor den inspect-Methode zum zurückgeben von etwas, das finden Sie schön. Zum Beispiel:
Nach dem das Ergebnis der ProductColor.alles wird als so etwas wie [<1 - Weiß (White)>, ...]. Natürlich stellen Sie die inspect-Methode an Ihre Bedürfnisse an, so dass es zeigt alle Informationen, die Sie brauchen, in einem Stil, den Sie mögen.
Edit: auch wenn das Problem war die fehlende Zeilenumbrüche in der Ausgabe, können Sie versuchen,
sollte einfügen Zeilenumbrüche gegebenenfalls
InformationsquelleAutor der Antwort sepp2k
Hinzuzufügen, zu Ändern Lago Vorschlag für die Verwendung AwesomePrint,
Wenn Sie können nicht/sollte nicht/don ' T wollen, fügen Sie die awesome_print Juwel, um Ihr Projekt im Gemfile:
gem install awesome_print
Editieren Sie ~/.irb.rc und fügen Sie diese:
$LOAD_PATH << '/Users/your-user/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/gems/1.9.1/gems/awesome_print-1.1.0/lib'
require 'awesome_print'
(Sicherstellen, dass der Pfad und die version korrekt sind, natürlich)
InformationsquelleAutor der Antwort Excalibur
Können Sie auch versuchen, die folgenden für eine Gruppe von Objekten
Dies wird Ihnen viel schöner Ausgabe, wie
Aufrufen
to_yaml
auf Attribute statt auf das Objekt selbst erspart Ihnen die Anzeige der vollständigen Inhalt des Objekts in der AusgabeOder
puts Object.last.attributes.to_yaml
für ein einzelnes ObjektKürzel ist auch verfügbar:
y Object.last.attributes
InformationsquelleAutor der Antwort Abram