Allgemeine Rettung im gesamten Controller, wenn ID nicht gefunden - RoR

Ich bin auf eine Situation gestoßen, in der meine Anwendung nach einer ID sucht, die in der Datenbank nicht vorhanden ist. Eine Ausnahme wird ausgelöst. Dies ist natürlich eine ziemlich normale Situation für jeden Webentwickler.

Dank andiese Antwort Ich weiß, dass die Verwendung von Rettungsdiensten ziemlich gut mit der Situation zurechtkommt:

def show
  @customer = Customer.find(params[:id])
  rescue ActiveRecord::RecordNotFound #customer with that id cannot be found
    redirect_to action: :index        #redirect to index page takes place instead of crashing
end

Falls der Kunde nicht gefunden werden kann, wird der Benutzer zur Indexseite weitergeleitet. Das funktioniert absolut gut.

Nun, das ist alles schön, aber ich muss die gleichen Rettungsversuche in Aktionen wie Anzeigen, Bearbeiten, Zerstören usw. durchführen, d. H.jeden Controller-Methode, die eine bestimmte ID benötigt.

Nachdem ich das gesagt habe,hier ist meine frage: Gibt es keine Möglichkeit, meinem Controller generell mitzuteilen, dass er, wenn er die ID in keiner seiner Methoden findet, zur Indexseite umleiten soll (oder generell eine bestimmte Aufgabe ausführen soll)?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage