class Guise::HasGuisesScope

@api private

Public Instance Methods

call() click to toggle source
# File lib/guise/scopes.rb, line 14
def call
  relation.create_with(association_name => [association_relation.new])
end
type() click to toggle source
# File lib/guise/scopes.rb, line 18
def type
  :has_guises
end

Private Instance Methods

association_name() click to toggle source
# File lib/guise/scopes.rb, line 35
def association_name
  @options.association_name
end
association_relation() click to toggle source
# File lib/guise/scopes.rb, line 39
def association_relation
  @options.scope(@value, :guise_for).call
end
relation() click to toggle source
# File lib/guise/scopes.rb, line 24
def relation
  source_class.
    select(source_class.arel_table[Arel.star]).
    joins(association_name).
    merge(association_relation)
end
source_class() click to toggle source
# File lib/guise/scopes.rb, line 31
def source_class
  @options.source_class
end