module JsonapiForRails::Controller::BeforeActions::SparseFieldsets::InstanceMethods

Public Instance Methods

jsonapi_sparse_fieldsets() click to toggle source
# File lib/jsonapi_for_rails/controller/before_actions/sparse_fieldsets.rb, line 19
def jsonapi_sparse_fieldsets
        @jsonapi_sparse_fieldsets = {}
        return unless params[:fields]

        params[:fields].each do |resources_name, fields|
                resources_name = resources_name.to_sym
                fields = 
                        fields.split(',').
                        map{|field| field.strip.to_sym }.
                        select{|e| e =~ /^[A-Za-z1-9_]+$/} # BUG: selector too restrictive
                next if fields.size.zero?
                @jsonapi_sparse_fieldsets[resources_name] = fields#.join(',')
        end 

end