2010-12-04 14 views
8

Hallo Leute, ich habe dieses Video-Tutorial auf Ruby on Rails und ich sehe, dass der Typ hat ein unteres Skript debuggen, im Browser-Fenster. Das Problem ist, ich habe nur einen Teil dieses Video-Tutorials (dieser Teil ist kostenlos) und er sagt nichts über das Debuggen. Vielleicht könnt ihr es herausfinden.Ruby on Rails Debug Frage

Hier ist ein Screenshot mit ihm: http://i55.tinypic.com/3537drp.png

Wie kann ich das erreichen? Vielen Dank.

+0

Sieht aus wie eine Dump von Params. Du könntest einen nicht-so-schönen Dump der Params erreichen mit '<% ​​= params.inspect%>' irgendwo in deiner 'application.html.erb' Layoutdatei. – Zabba

Antwort

9

In der Ansicht, etwas zu tun, wie

<%= debug params %> 

wird erreichen, was Sie gezeigt haben. Mit Hilfe des Debug-Helfers können Sie im Grunde einen YAML-Dump von jeder Variablen erhalten, die für die Ansicht verfügbar ist. Außerdem wird der Dump "formatiert", indem er in einem <pre> Block formatiert wird und eine andere Hintergrundfarbe verwendet wird. Aus dem Blick dessen, was er hat, könnte er das am Ende eines Layouts hinzugefügt haben (möglicherweise in app/views/layouts/application.html.erb). Das wird Ihnen auf allen Ihren Seiten den Müll geben.

+0

Genau das, was ich wollte, danke einen Haufen. –

0

Sieht aus, als ob er nur params.to_yaml auf die Seite rendern würde.

0

sollten Sie vielleicht erwägen Schienen mit der --debugger Flagge läuft wie in diesem Handbuch erläutert: http://guides.rubyonrails.org/debugging_rails_applications.html

+1

Wie bekommst du dann das params-Objekt? – Magne

+0

Sie legen einen Haltepunkt in Ihrem Controller und erkunden Sie den Ausführungskontext mit p oder durch Aufrufen von irb im Debugger. –

0

die Ansicht für das Debuggen können Sie einfach <% Debugger%> in der Ansicht Seite, wo Ihr wollen den Datenfluss zu sehen und wieder diese Ansicht laden und auf der Konsole können Sie jede Sichtlinie ausführen und den Datenfluss sehen. Stellen Sie sicher, dass Sie einen Debugger-Gem in Ihrer Gem-Datei haben.