module Yaks::Behaviour::OptionalIncludes
Constants
- RACK_KEY
Public Instance Methods
associations()
click to toggle source
Calls superclass method
# File lib/yaks/behaviour/optional_includes.rb, line 8 def associations super.select do |association| association.if != Undefined || include_association?(association) end end
Private Instance Methods
include_association?(association)
click to toggle source
# File lib/yaks/behaviour/optional_includes.rb, line 16 def include_association?(association) includes = env.fetch(RACK_KEY) do query_string = env.fetch("QUERY_STRING", nil) query = Rack::Utils.parse_query(query_string) env[RACK_KEY] = query.fetch("include", "").split(",").map { |r| r.split(".") } end includes.any? do |relationship| relationship[mapper_stack.size].eql?(association.name.to_s) end end