Sha256: 4c9ee661f1cf2da17c9790ad4387952c72c5b4cf394d062ac7b9b347e717e0e0
Contents?: true
Size: 539 Bytes
Versions: 6
Compression:
Stored size: 539 Bytes
Contents
module JsonapiCompliable class Scope::Sort < Scope::Base def custom_scope dsl.sorting end def apply_standard_scope @scope.order(attribute => direction) end def apply_custom_scope custom_scope.call(@scope, attribute, direction) end private def sort_param @sort_param ||= (params[:sort] || @controller.default_sort) end def direction sort_param.starts_with?('-') ? :desc : :asc end def attribute sort_param.dup.sub('-', '').to_sym end end end
Version data entries
6 entries across 6 versions & 1 rubygems