Module Sequel::Plugins::Tree::ClassMethods
In: lib/sequel/plugins/tree.rb

Methods

Attributes

parent_column  [RW]  The symbol for the column containing the value pointing to the parent of the leaf.
tree_order  [RW]  The column symbol or array of column symbols on which to order the tree.

Public Instance methods

Copy the parent_column and order_column to the subclass.

[Source]

    # File lib/sequel/plugins/tree.rb, line 59
59:         def inherited(subclass)
60:           super
61:           subclass.parent_column = parent_column
62:           subclass.tree_order = tree_order 
63:         end

Returns list of all root nodes (those with no parent nodes).

  TreeClass.roots # => [root1, root2]

[Source]

    # File lib/sequel/plugins/tree.rb, line 68
68:         def roots
69:           roots_dataset.all
70:         end

Returns the dataset for retrieval of all root nodes

  TreeClass.roots_dataset => Sequel#Dataset

[Source]

    # File lib/sequel/plugins/tree.rb, line 75
75:         def roots_dataset
76:           ds = filter(parent_column => nil)
77:           ds = ds.order(*tree_order) if tree_order
78:           ds
79:         end

[Validate]