Sha256: fc222fad2f074f33eefa52288e2ef4029a1cceb996cf7c8f6c9ab0752cb95eeb

Contents?: true

Size: 739 Bytes

Versions: 40

Compression:

Stored size: 739 Bytes

Contents

module Rao
  module Api
    module ResourcesController::FirstActionConcern
      extend ActiveSupport::Concern

      included do
        if respond_to?(:before_action)
          before_action :load_first, only: [:first]
        else
          before_filter :load_first, only: [:first]
        end
      end

      def first
        respond_to do |format|
          if @resource.nil?
            format.json { render json: nil }
          else
            format.json { render json: [serialize_resource(@resource)] }
          end
        end
      end

      private

      def load_first
        base_scope = resource_class
        scope = add_conditions_from_query(base_scope)
        @resource = scope.first
      end
    end
  end
end

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
rao-api-resources_controller-0.0.52.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.51.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.50.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.49.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.48.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.47.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.46.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.45.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.44.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.43.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.42.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.41.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.40.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.39.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.38.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.37.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.36.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.35.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.34.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.33.pre app/concerns/rao/api/resources_controller/first_action_concern.rb