Sha256: 20683a7799cfef31cf2f21395462d3eda550f4697097ba69e381818ea865ad71
Contents?: true
Size: 970 Bytes
Versions: 4
Compression:
Stored size: 970 Bytes
Contents
# frozen_string_literal: true module RailsMiniProfiler class ApplicationController < ActionController::Base include Pagy::Backend rescue_from ActiveRecord::RecordNotFound, with: ->(error) { handle(error, 404) } before_action :check_current_user protected def present(model, presenter_class = nil, **kwargs) klass = presenter_class || "RailsMiniProfiler::#{model.class.to_s.demodulize}Presenter".constantize presenter = klass.new(model, view_context, **kwargs) yield(presenter) if block_given? presenter end private def handle(error, status = 500) respond_to do |format| format.html { redirect_back(fallback_location: profiled_requests_path, alert: error.to_s) } format.json { render status: status, json: { message: error.to_s } } end end def check_current_user redirect_back(fallback_location: root_path) unless User.get(request.env).present? end end end
Version data entries
4 entries across 4 versions & 1 rubygems