Chcę złapać nieznany błąd działania w Rails 3, który pokazuje błąd "Nieznana akcja" podczas tworzenia i 404.html podczas produkcji. Próbowałem umieścić ten rescue_from
Handler na moim ApplicationController (a także na faktycznym kontrolerze, na wszelki wypadek), ale nadal widzę brzydki błąd.Złap nieznaną akcję w Railsach 3 dla niestandardowego 404
Mam niestandardowe rzeczy na 404, i to nie może być zwykły plik .html.
Moja trasa:
match '/user/:id/:action', controller: 'users'
URL mam dostępu: /user/elado/xxx
Kod rescue_from
:
rescue_from AbstractController::ActionNotFound, :with => :action_not_found
def action_not_found
render text: "action_not_found"
end
Błąd w przeglądarce:
Unknown action
The action 'xxx' could not be found for UsersController
A w konsoli:
Started GET "/user/elado/xxx" for 127.0.0.1 at 2011-09-07 19:16:27 -0700
AbstractController::ActionNotFound (The action 'xxx' could not be found for UsersController):
Próbowano również rescue_from ActionController::UnknownAction
.
Wszelkie sugestie? Dzięki!
Poniższy link zapewnia dobry wgląd, a także podaje przykład lepszego radzenia sobie z wyjątkami (3.2 lub wyżej). http://geekmonkey.org/articles/29-exception-applications-in-rails-3-2 – Agustin