Module: ActsAsRecursiveTree::Builders::Strategy

Extended by:
ActiveSupport::Autoload
Defined in:
lib/acts_as_recursive_tree/builders/strategy.rb,
lib/acts_as_recursive_tree/builders/strategy/join.rb,
lib/acts_as_recursive_tree/builders/strategy/ancestor.rb,
lib/acts_as_recursive_tree/builders/strategy/subselect.rb,
lib/acts_as_recursive_tree/builders/strategy/descendant.rb

Overview

Strategy module for different strategies of how to build the resulting query.

Defined Under Namespace

Modules: Ancestor, Descendant, Join, Subselect

Class Method Summary collapse

Class Method Details

.for_query_options(query_opts) ⇒ Object

Returns a Strategy appropriate for query_opts

Parameters:

Returns:

  • a strategy class best suited for the opts



21
22
23
24
25
26
27
# File 'lib/acts_as_recursive_tree/builders/strategy.rb', line 21

def self.for_query_options(query_opts)
  if query_opts.ensure_ordering || query_opts.query_strategy == :join
    Join
  else
    Subselect
  end
end