Module: Polyamorous::JoinDependencyExtensions::ClassMethods
- Defined in:
- lib/polyamorous/activerecord_5.2_ruby_2/join_dependency.rb,
lib/polyamorous/activerecord_6.0_ruby_2/join_dependency.rb
Instance Method Summary collapse
-
#walk_tree(associations, hash) ⇒ Object
Prepended before ActiveRecord::Associations::JoinDependency#walk_tree.
Instance Method Details
#walk_tree(associations, hash) ⇒ Object
Prepended before ActiveRecord::Associations::JoinDependency#walk_tree
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/polyamorous/activerecord_5.2_ruby_2/join_dependency.rb', line 58 def walk_tree(associations, hash) case associations when TreeNode associations.add_to_tree(hash) when Hash associations.each do |k, v| cache = if TreeNode === k k.add_to_tree(hash) else hash[k] ||= {} end walk_tree(v, cache) end else super(associations, hash) end end |