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.32.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.31.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.30.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.29.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.28.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.27.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.26.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.25.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.24.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.23.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.22.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.21.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.20.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.19.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.18.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.17.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.16.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.15.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.14.pre app/concerns/rao/api/resources_controller/first_action_concern.rb
rao-api-resources_controller-0.0.13.pre app/concerns/rao/api/resources_controller/first_action_concern.rb