Sha256: 6195487627f700d86c0d8ca84149b6e6ff3910bb4790aceaa62b9c124463d7c7
Contents?: true
Size: 1.14 KB
Versions: 1
Compression:
Stored size: 1.14 KB
Contents
module ActsAsFollower module FollowerLib private DEFAULT_PARENTS = [ApplicationRecord, ActiveRecord::Base] # Retrieves the parent class name if using STI. def parent_class_name(obj) unless parent_classes.include?(obj.class.superclass) return obj.class.base_class.name end obj.class.name end def apply_options_to_scope(scope, options = {}) if options.has_key?(:limit) scope = scope.limit(options[:limit]) end if options.has_key?(:includes) scope = scope.includes(options[:includes]) end if options.has_key?(:joins) scope = scope.joins(options[:joins]) end if options.has_key?(:where) scope = scope.where(options[:where]) end if options.has_key?(:order) scope = scope.order(options[:order]) end scope end def parent_classes return DEFAULT_PARENTS unless ActsAsFollower.custom_parent_classes ActiveSupport::Deprecation.warn("Setting custom parent classes is deprecated and will be removed in future versions.") ActsAsFollower.custom_parent_classes + DEFAULT_PARENTS end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
acts_as_follower1-1.0.9 | lib/acts_as_follower/follower_lib.rb |