2017-11-05 1 views
0

Ich möchte den App Start von einem Initialisierer stoppen. Etwas wie wenn eine Konfiguration nicht vorhanden ist, stoppen Sie Server/Konsole, etc. Senden Sie auch eine Nachricht, um den Fehler zu erklären.Wie kann ich die Ausführung von Rails vom Initialisierer stoppen?

Gibt es eine Möglichkeit, das zu tun?

Ich schaute in Initialisierungsereignisse, aber ich kann es nicht passieren lassen.

Vielen Dank im Voraus. Ja

Antwort

1

, heben nur eine Ausnahme, wie Sie normalerweise würde:

raise StandardError, "Stopping app start up because something is missing" 

Wenn Sie dies tun, weil einige Config fehlt, sollten Sie so etwas wie Figaro verwendet, die dies für Sie tut.

Figaro.require_keys("pusher_app_id", "pusher_key", "pusher_secret")

https://github.com/laserlemon/figaro

1

können Sie die Kernel#abort Methode verwenden, es zu tun. Es stoppt die Anwendung mit Ihrer bereitgestellten Nachricht und wird keinen Fehler verursachen.

Beispiel:

abort('You need to pass more info to start the application') if some_check_fails? 
Verwandte Themen