7

Ist es möglich, die ausgezeichnete better_errors Edelstein als Debugger zu verwenden?Verwenden Sie better_errors als Debugger?

Mit anderen Worten, kann ich Code hinzufügen, damit es in die "error" -Seite von better_errors fällt, herumstöbern, Dinge überprüfen und dann fortfahren?

Ich kann einen falschen Fehler oder raise hinzufügen, aber dann kann ich nicht "weiter".

Ja, ich weiß, ich Debugger oder hebeln verwenden können, aber die better_errors Schnittstelle überlegen ist, enthält alle möglichen Anfrage & Stapel Info, und ich kann mit zwei Windows-Code/debug offen statt 3.

Antwort

3

Nein Es ist um die Fehlerseite herum aufgebaut. Und der Call-Stack-Snapshot dauert von der letzten Ausnahme.

3

Oder oder .... wenn Sie auch wirklich brauchen.

Setzen Sie einfach: raise 'something' und einen beliebigen Fehler auslösen, wo immer Sie es brauchen, und dann haben Sie Ihre REPL dort.

3

Betrachten Sie die binding_of_caller Edelstein in Verbindung mit better_errors zu verwenden. Nehmen Sie 8 Minuten und sehen Sie sich RailsCasts #402 für eine Demo an, die beide Edelsteine ​​zusammen verwendet. Es wird nicht Debug-Stepping oder Watchpoint-Einstellung erhalten, aber es wird Ihnen sicherlich erlauben, lokale und Instanz-Variablen in jedem Stack-Frame zu inspizieren und zu stochern (jede mit ihrer eigenen REPL).

Vom README:

binding_of_caller Mit uns Bindungen von weiter oben in den Aufruf Stapel greifen und auswerten können Code in diesem Zusammenhang. Ermöglicht den Zugriff auf Bindungen beliebig weit nach oben auf den Call-Stack, nicht nur auf den unmittelbaren Anrufer beschränkt.

Stellen Sie sicher, dass Sie es nur in Ihrer Entwicklungsumgebung verwenden. Sie sollten Folgendes in Ihrer Gemfile haben.

group :development do 
    gem 'better_errors' 
    gem 'binding_of_caller' 
end 
Verwandte Themen