Class: ActiveRecord::HierarchicalQuery::CTE::RecursiveTerm
- Inherits:
-
Object
- Object
- ActiveRecord::HierarchicalQuery::CTE::RecursiveTerm
- Defined in:
- lib/active_record/hierarchical_query/cte/recursive_term.rb
Instance Attribute Summary collapse
Instance Method Summary collapse
- #arel ⇒ Object
-
#initialize(query) ⇒ RecursiveTerm
constructor
A new instance of RecursiveTerm.
Constructor Details
#initialize(query) ⇒ RecursiveTerm
Returns a new instance of RecursiveTerm.
15 16 17 |
# File 'lib/active_record/hierarchical_query/cte/recursive_term.rb', line 15 def initialize(query) @query = query end |
Instance Attribute Details
#query ⇒ ActiveRecord::HierarchicalQuery::CTE::Query (readonly)
6 7 8 |
# File 'lib/active_record/hierarchical_query/cte/recursive_term.rb', line 6 def query @query end |
Instance Method Details
#arel ⇒ Object
19 20 21 22 23 24 25 26 |
# File 'lib/active_record/hierarchical_query/cte/recursive_term.rb', line 19 def arel arel = scope.select(query.columns) .select(ordering_column) .arel .join(recursive_table).on(join_conditions) cycle_detector.visit_recursive(arel) end |