[Rails] Das Problem, dass pry-byebug nicht durch den Haltepunkt stoppt

Entwicklungsumgebung

Docker: v19.03.13 Ruby: v2.5.7 Rails: v5.2.4.4 pry: v0.13.1 pry-byebug: v3.9.0 PostgreSQL: psql (PostgreSQL) 13.0 (Debian 13.0-1.pgdg100+1)

Inhalt

In der Docker-Umgebung habe ich Gem Pry-byebug von Ruby on Rails eingeführt, die Verarbeitung gestoppt und Variablen, Parameter und den Verarbeitungsablauf überprüft, aber plötzlich gestoppt. .. .. Ja wirklich. plötzlich. In der Anzeige auf der Konsole ist die Markierung => am Haltepunkt angebracht, aber wie unten gezeigt, wird sie nicht gestoppt und das Rendern beginnt über den Haltepunkt. スクリーンショット 2020-10-14 9.47.02.png [1] pry (# <HomesController>)> und der Teil, in den Sie während des Debuggens Befehle eingeben können, werden ebenfalls angezeigt, aber obwohl Sie nichts getan haben, wird er durchlaufen und gerendert ... Es war mein erstes Verhalten, also habe ich es im Internet nachgeschlagen, aber es gab nirgendwo Informationen und ich war ungefähr zwei Tage lang süchtig danach ...

Lösung

Aus der Schlussfolgerung heraus funktioniert es normal, indem tmp direkt unter dem Anwendungsstammordner gelöscht wird. Ich fragte mich, warum ich den tmp-Ordner gelöscht hatte, aber als ich mir die Informationen einschließlich anderer Sprachen im Internet ansah, stellte ich fest, dass der Cache in tmp gespeichert war, und sagte:" Wenn dieser Effekt ein Problem verursacht. Passiert es? Wenn es ein Cache ist, ist es in Ordnung, ihn zu löschen? Es wird von Git verwaltet, und wenn etwas schief geht, sollte es wiederhergestellt werden ... ", und ich habe versucht, es zu löschen. Lol tmp bezieht sich auf temporäre Datei (= temporäre Datei) ... Es wird eine Studie sein. Lol Sie haben einen Hinweis auf die Benennung dieser Ordner und Dateien erhalten. Ich fand es wichtig, die Bedeutung zu kennen.

Selbst wenn Sie sich das Rails-Handbuch ansehen, heißt es, dass es sich auch um einen Ordner handelt, in dem der Aktionscache usw. gespeichert ist. Was ich jedoch für gescheitert halte, ist der Rails-Leitfaden

tmp / cache mit schienen leeren tmp: cache: clear. Leere tmp / sockets mit schienen tmp: sockets: clear. Leere tmp / Screenshots mit Schienen tmp: Screenshots: klar. Mit Rails tmp: Löschen Sie den Cache, die Sockets und die Screenshot-Verzeichnisse. Rails tmp: create erstellt tmp-Verzeichnisse für Cache, Sockets und Pids.

Es wurde festgestellt.

Ich bedauere, dass ich mein Verständnis hätte vertiefen können, wenn ich die Ordner durch Ausführen dieses Befehls trennen könnte, anstatt sie alle auf einmal zu löschen. Ich konnte die Ursache nicht herausfinden, da sie wieder normal funktioniert, aber ich hoffe, Sie können es versuchen, wenn Sie sich in einer ähnlichen Situation befinden.

Recommended Posts

[Rails] Das Problem, dass pry-byebug nicht durch den Haltepunkt stoppt
[Rails] Behebung des Problems, dass das Sitzungszeitlimit nicht funktioniert
So lösen Sie das Problem, dass Aptana Studio nicht gestartet wird
So lösen Sie das Problem, dass das Website-Image nach der Bereitstellung auf Heroku in Rails 5 nicht angezeigt wird
[Firebase] Firebase Auth currentUser wird auch nach der Deinstallation der App nicht null
Informationen zum Problem, dass das Image nach der AWS-Bereitstellung nicht angezeigt wird
Es wurde ein Problem behoben, bei dem das Bildlaufereignis in JQuery nicht ausgelöst wurde
[Schienen] Was tun, wenn Schienen nicht reagieren oder nicht anhalten?
Die Geschichte, dass der Erstellungsfehler bei Verwendung von Eclipse 2020 nicht aufgehört hat
So interagieren Sie mit einem Server, der die App nicht zum Absturz bringt
Das Problem, dass der Inhalt von Parametern vollständig in der Ansicht [Rails] angezeigt wird
[Schienen] Über den Fehler, dass das Bild nicht in der Produktionsumgebung angezeigt wird
[Rails] Video wird nicht mit video_tag abgespielt
JavaScript (Vanille) reagiert in Rails nicht.
[Fehler] So beheben Sie das Phänomen, dass der Bildschirm nach der Bearbeitung nicht wechselt
Einstellungsmethode, die die Größe nicht ändert, auch wenn das CSS geändert wird
Das in JAVA_HOME festgelegte JDK-Problem tritt auch dann nicht auf, wenn die Java-Version an der Eingabeaufforderung ausgeführt wird