Tôi có một ứng dụng với người dùng và sự kiện. Mỗi người dùng có một số sự kiện. Khi một người dùng muốn xem một sự kiện cụ thể, ông sẽ nhận được hành động này:cách xử lý ActiveRecord :: RecordNotFound trong bộ điều khiển đường ray?
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
Nếu sự kiện không được tìm thấy cho người sử dụng nó có nghĩa là anh ấy chơi với URL và sự kiện ông đang cố gắng để có được không thuộc về cho anh ta. Tôi muốn chuyển hướng anh ta đến trang chính hoặc chỉ hiển thị trang có lỗi mà sự kiện không được tìm thấy. Nếu tôi cố chạy mã ở trên lỗi này kích hoạt:
AbstractController::DoubleRenderError in EventsController#show
Cách tốt nhất để khắc phục sự cố này là gì?
oh ơn chúa .... gửi tin nhắn từ tương lai =) –