como lidar com ActiveRecord :: RecordNotFound no controlador de trilhos?

Eu tenho um aplicativo com usuário e eventos. Cada usuário tem vários eventos. Quando um usuário deseja ver um evento específico, ele acessará essa ação:

def show
  begin
    @userEvents = current_user.event
    @event = @userEvents.find(params[:id])
  rescue ActiveRecord::RecordNotFound  
    redirect_to :controller => "main", :action => "index"
  end

  respond_to do |format|
    format.html # show.html.erb
    format.json { render json: @event }
  end
end

Se o evento não for encontrado para o usuário, significa que ele jogou com a URL e o evento que ele está tentando obter não pertence a ele. Eu quero redirecioná-lo para a página principal ou apenas exibir a página com um erro que o evento não foi encontrado. Se eu tentar executar o código acima, este erro será acionado:

AbstractController::DoubleRenderError in EventsController#show 

Qual é a melhor maneira de consertar isso?

questionAnswers(3)

yourAnswerToTheQuestion