Мне интересно, как лучше всего справляться с такой ситуацией в ruby на рельсах.
users_controller.rb
def show
@user = User.find params[:id]
end
Если пользователь не найден, он генерирует исключение, которое нигде не перехватывается, поэтому он отображает некоторые уродливые вещи для конечного пользователя.
Решение было бы упаковать его в начало ... спасение ... конец блока:
def show
begin
@user = User.find params[:id]
rescue
flash[:error] = "User not found"
redirect :action => :index
end
end
хотя я никогда не видел такого кода ни в одной статье или учебнике по rails.
Как правильно обращаться с такими ситуациями?